2013-02-23 75 views
1

我想检查参考选定的文本框,但是当我更改为其他文本框时,第一个单选按钮保持选中状态!并且我不知道如何才能根据每个文本框检查单选按钮。如何检查相对于文本框的单选按钮?

<html> 
<head> 
<script src="http://code.jquery.com/jquery-latest.js"></script> 
</head> 
<body> 
<p><input type="text" /> <input name="radio" type="radio" value="val1"/></p> 
<p><input type="text" /><input name="radio" type="radio" value="val2"/></p> 
<p><input type="text" /><input name="radio" type="radio" value="val3"/></p> 
<p><input type="text" /><input name="radio" type="radio" value="val4"/></p> 
<script> 
$("input").focus(function() { 
$('input:radio[name=radio]:nth(0)').attr('checked',true); 

}); 
</script> 
</body> 
</html> 
+1

你是说,如果一个文本框内部的用户点击,要标记对应的单选按钮选中呢? – Brad 2013-02-23 15:22:30

回答

0

您可以使用.next()为您的具体布局。也就是说,考虑到单选按钮紧跟输入文本。

$("input").focus(function() { 
    $(this).next(":radio").prop("checked", true); 
}); 

另外,从jQuery 1.6开始,在这种情况下推荐使用.prop()

See it here.

+0

完美!谢谢 – lezti 2013-02-23 16:14:03

0
<html> 
<head> 
<script src="http://code.jquery.com/jquery-latest.js"></script> 
</head> 
<body> 
<p><input type="text" /> <input name="radio" type="radio" value="val1"/></p> 
<p><input type="text" /><input name="radio" type="radio" value="val2"/></p> 
<p><input type="text" /><input name="radio" type="radio" value="val3"/></p> 
<p><input type="text" /><input name="radio" type="radio" value="val4"/></p> 
<script> 
$(':text').focus(function() { 
    $(this).parent().children('input[type=radio]').attr('checked',true); 
}); 
</script> 
</body> 
</html>