我正在使用
document.getElementById('myId').checked = true;
更改应检查哪个无线电输入/按钮。
它工作正常,但我也有一个事件监听器
document.getElementById('myId').onchange = function () {
console.log(this.checked);
};
问题是当我点击无线电输入/按钮时会触发事件监听器,但是当我用代码更改checked
状态时不会触发它。
答案 0 :(得分:0)
来自docs:
当控件失去输入焦点并且自获得焦点后其值已被修改时,会发生更改事件。此事件对INPUT,SELECT和TEXTAREA有效。元件。
因此,当您以编程方式更改值时,事件不会触发。所以你可以做的是以编程方式调用该函数来激活事件。
$cnjQ('.news-owlgrid').children().find('a.cn-read-more').each(function() {
$cnjQ(this).click(function() {
var contentHref = $cnjQ(this).attr('href');
$cnjQ.fancybox({
/*'width': 750,
'height': 750,*/
'type': 'iframe',
'content': $cnjQ(contentHref).show(),
//'content': $cnjQ(contentHref).html(),
'beforeLoad': function() {
},
});
});
});