1

我的选择框有问题。我为事件分配了一个 ajax 处理程序onchange。如果您使用鼠标,它可以正常工作。但是,当使用键更改选项时,我需要它工作。select选项发生了变化,但直到失去焦点才进行 ajax 调用。这个问题似乎是Firefox特有的。

小提琴

有谁知道我该怎么做?

4

2 回答 2

1

您可以分配 onkeyup 事件来选择,然后手动监听更改查看代码

$("#sel").change(function(){
  alert("hello");
});

oldval = $("#sel").val();

$("#sel").keyup(function(){
  if(oldval != $("#sel").val())
  $(this).change();
});

当然它应该在生产使用之前进行细化,但这只是一个开始。顺便说一句,如果您在通过键盘更改值后按 Enter 键,则会触发更改事件。我相信你没有按回车键。所以值确实没有变化,而是处于变化的状态。因此浏览器不会触发更改事件。

我希望它会有所帮助。

于 2013-01-08T20:11:33.297 回答
0

向上和向下箭头仅用于浏览您的选项,但如果您想触发它们,您需要按 Enter 键。

更新

实际上,在您按下回车键或焦点从选择框中移出之前,尚未选择选项。按键事件和鼠标点击事件的行为略有不同。

于 2013-01-08T20:12:53.913 回答