jquery .change() 事件未在 iPhone 上触发



我在iPhone中触发jquery .change()事件时遇到问题。代码类似于以下内容:

var checkboxes = $('#someelement').find('input[type=checkbox]');
checkboxes.change(function() {
//never gets here on iPhone
alert('hello');
});
checkboxes.filter(':checked').trigger('change'); 

复选框列表在此步骤之前动态生成,使用 .append() 方法写入页面。

这一切都在桌面浏览器和安卓手机中运行良好。使用 JQuery 版本 1.6.4

有什么想法吗?

尝试使用 delegate ,它允许您将事件附加到当前和未来的元素。

$("#someelement").delegate('input[type="checkbox"]', "change", function(){
  alert('hello');
});

此外,从 jQuery 1.5 开始,所有属性选择器都需要引用(例如,第二个选择器中的"复选框")。

最新更新