2016-12-01 11 views
0

私は以下のようなjQueryスクリプトを持っており、name='service_id["+kode+"]'kodeの増分番号を設定したいと考えています。問題は、数字がまだ増加していないことです。ちょうど1に示されています。'.each' jqueryの番号を反復する

増分する行数を設定するにはどうすればよいですか?

function getCorporateService(id){ 
    // get data and parsing to column 
    $.get("{{ url('salesorder/service')}}/"+id, function(data){ 
     console.log(id); 
     console.log(data); 

     var kode = 0; 
     $.each(data, function (index, element){ 
      kode++; 
      $br = "<tr id='item'>"; 
      $br += "<td> <input class='input-small' type='text' id='order_identifier' name='order_identifier' readonly></td>"; 
      $br += "<td><input class='input-small' type='text' id='service_id["+id+"]' name='service_id["+kode+"]' value='"+element.service_name+"' readonly></td>"; 
      $br += "<td><select id='order_type["+id+"]' name='order_type["+id+"]'> <option> - </option> <option value='add'>Add</option> <option value='change'>Change</option> <option value='cancel'>Cancel</option> </select></td>"; 
      $br += "<td><input class='input-small' type='text' id='select_plan["+id+"]' name='select_plan["+kode+"]'></td>"; 
      $br += "<td><input class='input-mini' type='text' id='qty["+id+"]' name='qty["+kode+"]' value='1' onChange='getTotalPrice("+id+")'></td>"; 
      $br += "<td><input class='input-small' type='text' id='unit_price["+id+"]' name='unit_price["+kode+"]' onChange='getTotalPrice("+id+")'></td>"; 
      $br += "<td><input class='input-small' type='text' id='total_price["+id+"]' name='total_price["+kode+"]' onChange='getTotalPrice("+id+")'></td>"; 
      $br += "<td><textarea class='input-small' id='notes["+id+"]' name='notes["+kode+"]'></textarea></td>"; 
      $br += "</tr>"; 

      $(".corporatesvc").append($br); 

     }); 
    }); 
} 
+2

ので、ちょうど 'index'を使うのか? – Cerbrus

+1

kodeを増やしたい場合は、このkode = kode + 1のように値をkodeに戻す必要があります。また、直接インデックスを使用できるインクリメント変数を使用する必要はありません。 – GraveyardQueen

+1

@GraveyardQueen: ':' kode ++; ' – Cerbrus

答えて

1

あなたが応答から受信しているあなたのJSONデータに問題があるようです:

は、ここに私のスクリプトです。

は実施例を参照してください。jsFiddleで

$(document).ready(function() { 
 
    var data = [{ 
 
    "service_name": "Test 1", 
 
    "Major": "Physics" 
 
    }, { 
 
    "service_name": "Test 2", 
 
    "Major": "Chemistry" 
 
    }, { 
 
    "service_name": "Test 3", 
 
    "Major": "Mathematics" 
 
    }]; 
 
    var id = 1; 
 
    var kode = 0; 
 
    $.each(data, function(index, element) { 
 
    kode++; 
 
    $br = "<tr id='item'>"; 
 
    $br += "<td> <input class='input-small' type='text' id='order_identifier' name='order_identifier' readonly></td>"; 
 
    $br += "<td><input class='input-small' type='text' id='service_id[" + id + "]' name='service_id[" + kode + "]' value='" + element.service_name + "' readonly></td>"; 
 
    $br += "<td><select id='order_type[" + id + "]' name='order_type[" + id + "]'> <option> - </option> <option value='add'>Add</option> <option value='change'>Change</option> <option value='cancel'>Cancel</option> </select></td>"; 
 
    $br += "<td><input class='input-small' type='text' id='select_plan[" + id + "]' name='select_plan[" + kode + "]'></td>"; 
 
    $br += "<td><input class='input-mini' type='text' id='qty[" + id + "]' name='qty[" + kode + "]' value='1' onChange='getTotalPrice(" + id + ")'></td>"; 
 
    $br += "<td><input class='input-small' type='text' id='unit_price[" + id + "]' name='unit_price[" + kode + "]' onChange='getTotalPrice(" + id + ")'></td>"; 
 
    $br += "<td><input class='input-small' type='text' id='total_price[" + id + "]' name='total_price[" + kode + "]' onChange='getTotalPrice(" + id + ")'></td>"; 
 
    $br += "<td><textarea class='input-small' id='notes[" + id + "]' name='notes[" + kode + "]'></textarea></td>"; 
 
    $br += "</tr>"; 
 

 
    $(".corporatesvc").append($br); 
 

 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="corporatesvc"> 
 

 
</div>

を参照してくださいコードスニペット:https://jsfiddle.net/z6gbcutg/2/

関連する問題