jQuery触发onChange

时间:2012-02-05 16:44:49

标签: function onchange

我有一个input文本字段,使用jQuery函数填充图像的url。 如何使用input的“onChange”事件来运行jQuery函数?

4 个答案:

答案 0 :(得分:12)

如果您通过JavaScript更新字段,则在更改值后只需调用change()

$('#myId').val('new_url').change();

答案 1 :(得分:6)

试试这个 -

$('#myId').trigger('change');

将它放在您正在更改文本框中的网址的任何功能中。

答案 2 :(得分:5)

试试这个:

$("#myId").trigger('event_name')

其中event_name是您绑定检查器功能的事件,例如keyUp或更改

答案 3 :(得分:0)

我无法想象问题在于.change()或许在您的代码中的其他地方,我刚刚测试过,如果我复制并粘贴,或者我输入一些新文本(两者都有),事件将被触发普通和屏幕键盘)。

它似乎没有触发的唯一一次是当我将一些文本剪辑从桌面拖到输入框时,但是这与它被突出显示并且确实当输入框失去焦点时触发了事件(I想不出任何其他用例)

您可以使用blur()focusout()事件执行以下操作,基本上我认为这是change事件

function foo(e) {
    alert(e.type + ' triggered');
}

$('input').blur(function(e) {
    $t = $(this);
    if ($t.data('oVal') != $t.val()) {
        $t.data('oVal', $t.val());
        foo(e);
    }
})