假设,我们有以下标记:
<form>
<button type="button" id="all">check all</button>
<button type="button" id="none">check none</button>
<input type="checkbox" value="one" />
<input type="checkbox" value="two" />
<input type="checkbox" value="three" />
</form>
并遵循 JavaScript 代码:
(function($, document) {
$('#all').on('click', function() {
$('input', $(this).parent()).prop('checked', 'checked');
});
$('#none').on('click', function() {
$('input', $(this).parent()).removeProp('checked');
});
$('input').on('change', function() {
alert(this.value);
});
}(jQuery, document));
(见http://jsfiddle.net/inst/h7kyq/1/)
为什么当我们单击任何按钮时输入的 onChange 事件处理程序不执行?