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>
4

2 に答える 2

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>
于 2013-02-23T15:26:04.157 に答える
0

.next()特定のレイアウトに使用できます。つまり、ラジオボタンが入力テキストの直後に続くことを考慮してください。

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

また、jQuery 1.6 以降では.prop()、この場合に使用することをお勧めします。

こちらをご覧ください。

于 2013-02-23T15:20:52.010 に答える