Jquery输入更改选择框没有触发事件?

时间:2012-02-29 00:09:15

标签: jquery

我有一个用户可以输入的输入字段。在输入密钥时,此输入也有一个ajax请求。

此输入字段也可以由选择框触发的onchange事件填充,唯一的问题是当输入由onchange上的选择框填充时,不会为输入字段触发ajax,因为用户未键入它在。

我还在输入字段上使用了这些来触发ajax,并且它们都没有像用户手动输入输入字段或使用选择框填充输入字段那样双向工作。

.live('change, keyup', function() {

.change(function() {

3 个答案:

答案 0 :(得分:5)

使用javascript更新值时,不会触发元素events。当您将值设置为

时,应该从.change函数调用keyup事件

DEMO

.change(function() {
     //...
    $('.input').val($(this).val()).keyup();
 });

答案 1 :(得分:2)

首先,将keyup处理程序附加到输入字段,然后在单击选择框时,您可能会使用以下内容填充输入:

$('select').on('change', function() {
    $('input').val('some value').keyup();  //the last keyup will trigger the bound keyup on the input
});

这将触发keyup,反过来将运行你的ajax函数!

编辑: 我现在看到这几乎是SKS给出的答案,这是正确的吗?

答案 2 :(得分:0)

您正在寻找onfocus JS / focus JQuery