2012-11-20 41 views
2

我的页面上有一组输入字段。他们设置为这样的阵列:按名称设置输入字段数组的值

<input type="text" name="test[name][]" /><br /> 
<input type="text" name="test[name][]" /><br /> 
<input type="text" name="test[name][]" /><br /> 
<input type="text" name="test[name][]" /> 

接下来我需要做的是在每个文本字段中设置一个唯一值。但我不知道如何用jQuery遍历这些字段。我尝试失败:DEMO

$(function() { 
    $.each('input[name="test[name][]"]', function() { 
     $(this).val('blaat'); 
    }); 
}); 

任何想法如何,我可以遍历每个输入字段,按名称选择它们!?我对这些控件没有任何影响。所以我不能给他们一个额外的类名或类似的东西。我所有的都是他们的名字。

+0

括号[]在HTML元素的名称无效字符。有效字符是a-zA-Z0-9_ :. –

回答

3

你用得到阵列的选择只是一个是字符串,但不是数组

'input[name^="test"]'应该$('input[name="test[name][]"]')

你能做到这样,

Live Demo

$(function() { 
    $.each($('input[name^="test[name][]"]'), function() {   
     $(this).val('blaat'); 
    }); 
}); 

+0

'$('input [name =“test [name] []”]')'应该可以正常工作,也就是没有'^ =' –

+0

谢谢@Jack,更新了答案。 – Adil

0

你可以做类似

$(function() { 
    $.each($('input[name^="test"]'), function() { 
     $(this).val('blaat'); 
    }); 
});​ 

编辑: 更高效

$(function() { 
    $('input[name^="test"]').each(function() { 
     $(this).val('blaat'); 
    }); 
});​