我有一个AJAX系统设置,可以帮助用户选择一个州,然后选择相应的城市和邮政编码。
问题是.change()
事件无法处理chrome。只要我使用鼠标并进行任何工作,这一切都很好,但是当我切换到键盘时,它就会消失。每次点击键盘都会触发.change()
事件。
相同的脚本在Firefox中运行良好。在这里工作的鼠标与chrome相同。但是当我使用键盘时,它不会触发.change()
事件。它会在模糊或按下回车键时触发它。
我正在寻找chrome的解决方法,以便它开始以与Firefox相同的方式工作。
我还没有测试过其他浏览器。
编辑:
我不愿意使用.blur()
或.click()
事件,因为这对普通用户来说会更加痛苦,因为如果他们错误地点击或跳过select标签而不更改值,则会再次触发ajax。
我的代码很好。
$('#state').change(function(event) {});
这一行应该适用于变更事件,直到我在chrome上使用我的键盘。
答案 0 :(得分:1)
为什么不绑定change和keypress事件,这应该让你在所有的浏览器上工作..因此定义你的回调函数而不是匿名。
function changeCallback(){}
$("#state").change(changeCallback).keypress(changeCallback);