如何通过第三方JavaScript确定单选按钮是否设置为checked = true?

时间:2011-09-22 17:38:07

标签: javascript-events

以编程方式将单选按钮设置为checked = true不会触发更改事件。如何知道脚本是否检查了单选按钮?

请参阅此示例:http://jsfiddle.net/wykEx/7/

在Firebug中,除非您手动单击单选按钮,否则不会将任何更改事件记录到控制台。

1 个答案:

答案 0 :(得分:0)

一种方法是设置计时器并轮询更改。当然,它可能不是最优雅的解决方案,但它应该足够好,并且应该适用于所有浏览器。

这样做的最大警告是,如果代码经常更改输入元素的checked属性,则可能会丢失一些转换。

window.setInterval(function(){
    var elem = $('twoRadioBtn');
    if(elem.checked != elem.lastchecked)
    {
        console.log('TWO changed!');

        elem.lastchecked = elem.checked;
    }
}, 100);        // poll every 100 ms.