假设我有一个包含此内容的表单:
<input type='radio' name='o37_field1' value='aaa'>aaa
<input type='radio' name='o37_field1' value='bbb'>bbb
<input type='radio' name='o44_field1' value='aaa'>abcdef
<input type='radio' name='o44_field1' value='bbb'>baksdf
<input type='radio' name='o58_field1' value='aaa'>wisdof
<input type='radio' name='o58_field1' value='bbb'>safhwr
这是我需要用jquery做的但遇到麻烦:
如果在其中一个集合中单击“aaa”,也为其他集合设置/检查“aaa”,并对其他任何具有“field1”作为名称一部分的单选按钮执行相同操作。 aaa“作为价值。
同上bbb
有什么想法吗?
答案 0 :(得分:3)
当选中一个时,这将设置所有无线电的值为“aaa”:
$(document).ready(function() {
$(':radio[value=aaa]').change(function(){
$(':radio[value=aaa]').prop('checked',true);
});
});
更强大的解决方案,例如在点击一个时选择所有“喜欢”值:
$(document).ready(function() {
$(':radio').change(function(){
$(':radio[name$='field1'][value='+$(this).val()+']').prop('checked',true);
});
});
答案 1 :(得分:1)
你走了。使用http://jsfiddle.net/5p8KN/ endswith attribute selector
选择field1。
$("input[type='radio']").click(function(){
$("input[type='radio'][name$='field1'][value='" + $(this).val() + "']").prop('checked',true);
});
如果您想查找{1}}的field1匹配,那么您可以使用input[name*='field1']
答案 2 :(得分:0)
将同一类应用于所有aaa单选按钮
然后在点击事件中使用
$("input[type='radio']").click(function(){
$(":radio[value="+$(this).val()+"]")).each(function(index,value){
$(this).attr('checked',true); or $(this).attr('checked','checked');
});
});