QA@IT
«質問へ戻る

質問を投稿

jQueryで複数ある子要素の属性を変更

var len = ('#test li').length;
for (var i = 0; i < len; i++) {
    $('#test li').eq(i).children('input[type="text"]')[0].attr('name', 'ccc[' + i + ']');
    $('#test li').eq(i).children('input[type="text"]')[1].attr('name', 'ddd[' + i + ']');
}

上記のコードが動きません。
やりたいことは「id='test'のli要素内の各text要素の属性値を変更する」ということです。

HTMLは例えば以下のようになっています。

<li>
  <input type="text" name="aaa[1]"> 
  <input type="text" name="bbb[1]"> 
  <input type="button" value="Delete">
</li>   
<li>
  <input type="text" name="aaa[2]"> 
  <input type="text" name="bbb[2]"> 
  <input type="button" value="Delete">
</li>   

何が悪いのか、どうしたら実現するのか、ぜひ教えて頂きたいです。
宜しくお願い致します。

```
var len = ('#test li').length;
for (var i = 0; i < len; i++) {
	$('#test li').eq(i).children('input[type="text"]')[0].attr('name', 'ccc[' + i + ']');
	$('#test li').eq(i).children('input[type="text"]')[1].attr('name', 'ddd[' + i + ']');
}
```
上記のコードが動きません。
やりたいことは「id='test'のli要素内の各text要素の属性値を変更する」ということです。


HTMLは例えば以下のようになっています。
```
<li>
  <input type="text" name="aaa[1]"> 
  <input type="text" name="bbb[1]"> 
  <input type="button" value="Delete">
</li>	
<li>
  <input type="text" name="aaa[2]"> 
  <input type="text" name="bbb[2]"> 
  <input type="button" value="Delete">
</li>	
```

何が悪いのか、どうしたら実現するのか、ぜひ教えて頂きたいです。
宜しくお願い致します。