我有一张桌子,其中包含radiobuttons。我希望用户能够点击表格,这将点击其中的单选按钮。然后我获取已检查的radiobutton的值并发送到服务器以获得一些更新。
直接点击radiobutton时,它只是花花公子,并且标记的radiobutton的值是正确的。
但是,如果我只是在radiobutton上使用.click();
,事件处理程序似乎在实际点击事件发生之前触发,并且在使用$("input:radio:checked").val()
时我得到之前的值。
我现在通过在单击处理程序中设置100毫秒的超时来“解决”这个问题,但它似乎错了。
有没有办法在处理之前执行实际点击?
感谢。
答案 0 :(得分:3)
你如何绑定点击事件?
此外,您可能需要的是.change()事件。只有在价值发生变化后才能解雇。
$("input:radio").change(function() {
alert($(this).is(':checked'));
});
答案 1 :(得分:1)
使用 .change()事件而不是单击()。即:
$("input:radio:checked").change(function() {
if ($(this).is(':checked')) {
console.log('Checked ' + $(this).val().toString());
}
});