0

我有一个 AJAX 系统设置,可以帮助用户选择一个州,然后选择相应的城市和邮政编码。

问题是.change()事件无法在 chrome 上运行。只要我使用鼠标并进行任何工作,一切都很好,但是当我切换到键盘时,它就死了。.change()每次点击键盘都会触发该事件。

相同的脚本在 Firefox 中运行良好。在这里工作的鼠标与 chrome 相同。但是当我使用键盘时,它不会触发.change()事件。它会在模糊或按下回车键时触发它。

我正在寻找 chrome 的解决方法,以便它开始以与 Firefox 相同的方式工作。

我还没有测试过其他浏览器。

编辑:
我不愿意使用.blur().click()事件,因为这对普通用户来说会更痛苦,因为如果他们错误地单击或跳过选择标签而不更改值,ajax 将再次被触发。

我的代码都很好。

$('#state').change(function(event) {});

这条线应该适用于更改事件,直到我在 chrome 上使用我的键盘。

4

1 回答 1

1

为什么不绑定更改和按键事件,这应该让你在所有浏览器上工作.. 从而定义你的回调函数而不是匿名的。

function changeCallback(){}

$("#state").change(changeCallback).keypress(changeCallback);
于 2012-04-22T11:48:45.227 回答