触发由javascript制作的复选框的更改

Tom*_*mas 3 javascript checkbox jquery onchange

我正在构建一个jQuery插件来设置样式复选框.我隐藏真实的一个,然后插入按钮,当点击切换隐藏的复选框.但是,如果我通过JavaScript检查隐藏的复选框,假按钮当然不会改变.我考虑过使用jQuery进行更改,.change()但它也不会在JavaScript发生时触发更改而不是实际单击复选框.

我希望插件是通用的,并且如果某人有一个像"全部检查"或"取消全部检查"这样的按钮,也可以使用JavaScript,我希望我的假复选框按钮可以相应地更改.

问题是我应该使用什么方法来代替jQuery的change(),以便不仅可以通过鼠标点击进行更改,还可以通过javascript进行更改 $('checkbox').prop('checked', true);

edit2: 我意识到没有正确的方法来使用JavaScript观看属性,除了每个复选框每秒多次检查属性非常没有吸引力.我决定不将这种低效的功能包含在我的插件中,而是留给用户使用如果他想通过JavaScript操纵值,则触发更改.

Ber*_*rgi 6

你不能看属性.您可以设置一个每隔几毫秒查找一次更改的计时器,但这并不令人满意.

相反,您应该依赖所有其他代码来触发更改事件,当他们希望像您这样的插件更新时(可能还有他们没有的情况):

$(':checkbox').prop('checked', true).change();
Run Code Online (Sandbox Code Playgroud)