2016-12-05 7 views
2

jqueryでeq()メソッドを使用しようとするとちょっとした問題があります。属性の使用のすべての値を変更する方法eq()jquery

私はこの

data = [11, 12, 13, 14, 15] 

と私のhtmlコードで私はこの詳細

<input type="text" value="1" name="sku[sku_id][quantity]"> 
<input type="text" value="1" name="sku[sku_id][quantity]"> 
<input type="text" value="1" name="sku[sku_id][quantity]"> 
<input type="text" value="1" name="sku[sku_id][quantity]"> 
<input type="text" value="1" name="sku[sku_id][quantity]"> 

でいくつかの入力タグを持っていると私は私のinputタグのすべての値を変更したい、などのような配列を持っていますこの

<input type="text" value="1" name="sku[11][quantity]"> 
. 
. 
. 
<input type="text" value="1" name="sku[15][quantity]"> 

私は私のスクリプトでこのコードを使用しますが、それは

01を働いていません
$.each(data, function(key, value){ 
    var sku_id = value; 
    console.log(key+" "+sku_id); 
    $('input[name="sku[sku_id][quantity]"]').eq(key).attr('name', 'sku['+sku_id+'][quantity]'); 
}) 

が、私はちょうどこのように、この中にクラスを追加しようとすると、それが働いて

$.each(data, function(key, value){ 
    var sku_id = value; 
    console.log(key+" "+sku_id); 
    $('input[name="sku[sku_id][quantity]"]').eq(key).addClass('goods'); 
}) 

誰も私を助けてくださいことができますか? T^T

+1

をチェック 'input'sと使用率を反復してください。 [このデモを見る](https://jsfiddle.net/tusharj/fLwahk2f/) – Tushar

答えて

0

この問題は、jqueryセレクタで選択したnameプロパティ自体を変更しているために発生します。

これだけclassを使用して、それが動作するかどうか

かどうかを確認し、代わりに `EQ()`のこのフィドルに

FIDDLE

関連する問題