Ответ 1
Вы должны сделать это с помощью элемента label
, добавленного jQuery UI. Попробуйте:
$("label[for='character_chartype_"+data.chartype+"']").click();
Посмотрите на это здесь, в контролируемой среде: http://jsfiddle.net/B3d4z/
У меня есть радиокнопки
<div id="typeRadios">
<input id="character_chartype_a" name="character[chartype]" type="radio" value="A" /><label for="character_chartype_a">A</label>
<input id="character_chartype_a" name="character[chartype]" type="radio" value="B" /><label for="character_chartype_b">B</label>
</div>
что я перехожу к кнопкам пользовательского интерфейса jQuery
$("#typeRadios").buttonset();
Какую строку кода я могу использовать для имитации щелчка на одной из кнопок? Я пробовал это
// here data.chartype equals "A"
$("input[value='"+data.chartype+"']").click();
но это не сработает. Спасибо за чтение.
Вы должны сделать это с помощью элемента label
, добавленного jQuery UI. Попробуйте:
$("label[for='character_chartype_"+data.chartype+"']").click();
Посмотрите на это здесь, в контролируемой среде: http://jsfiddle.net/B3d4z/
Я считаю, что вы ищете select
событие.
$("input[value='"+data.chartype+"']").select();
<div class="radioVote">
<input type="radio" id="radio1" name="radio" value="1"/><label for="radio1">ONE</label>
<input type="radio" id="radio2" name="radio" value="2"/><label for="radio2">TWO</label>
</div>
$(document).ready(function(){
$( ".radioVote" ).buttonset();
$('[for^=radio]').click(function() {
var theRadioElement = $(this).prev();
alert("Button" + theRadioElement.attr('id') + " clicked. VALUE:" + theRadioElement.val());
});
});
В этом примере показано, как получить идентификатор и значение, когда вы нажимаете на метку, принадлежащую радиостанции jQueryUI.
Счастливое кодирование:)