jquery выбор следующего элемента из позиции $ (this) - PullRequest
3 голосов
/ 06 сентября 2011

У меня есть следующий фрагмент моей страницы:

<div class="radio-group">
<input type="radio" name="group1" checked="checked" id="option1" value="option1"/>
<label for="option1">option1</label>
<input type="radio" name="group1" id="option2" value="option2"/>
<label for="option2">option2</label>
<input type="radio" name="group1" id="option3" value="option3"/>
<label for="option3">option3</label>
<input type="radio" name="group1" id="option4" value="option4"/>
<label for="option4">option4</label>
</div>

и этот код javascript для выбора скрытого ввода после щелчка по рации:

$("input[type='radio']").live("change", function () {        
    var el = this.parentNode.nextElementSibling;
    el.value = this.value;
});

Я хочу написать строку

var el = this.parentNode.nextElementSibling;

способом jQuery. Спасибо.

Ответы [ 4 ]

5 голосов
/ 06 сентября 2011
var el = $(this).parent().next().find("input[type='radio']");
el.val(this.value);

очень просто.:)

Edit

lol не уделял достаточного внимания разметке.: P исправлено.

4 голосов
/ 06 сентября 2011
$("input[type='radio']").live("change", function () {        
    var el = $(this).parent().next();
    el.val(this.value);
});
3 голосов
/ 06 сентября 2011
var el = this.parentNode.nextElementSibling;

переводится как

var $el = $(this).parent().next();
1 голос
/ 06 сентября 2011

используйте jquery's, также обратите внимание, что вы можете фильтровать следующий селектор (в случае, если с вашим кодом что-то не так)

var el = $(this).next('input[type="hidden"]');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...