JQuery更新时Jquery检测更改

时间:2014-01-31 19:19:12

标签: javascript jquery events

我知道这可能看似矛盾,但我正在尝试找出当jquery更新值时如何检测文本输入的更改。

在使用该页面的用户中,我的javascript执行此操作:

$('#LicenseOwnerId').val(company.Id);

我想要做的是对设置的值做出反应并执行另一个功能。

到目前为止,我已尝试过以下方法:

var obj = document.getElementById('LicenseOwnerId');
obj.onChange = function () {
    alert('select changed!');
};

我试过这个:

$('#LicenseOwnerId').bind('change input propertychange', function(event) {
    alert('select changed!');
});

我也试过这个:

$('#LicenseOwnerId').change(function () {
    alert('select changed!');
});

当值更新时,这些似乎都没有被触发,我想不出任何其他方法可以尝试将其连接起来。连接它的正确方法是什么(如果有的话)?

我开始怀疑这是否可行,因此也是跨浏览器的安全。

1 个答案:

答案 0 :(得分:3)

这很容易:

$('#LicenseOwnerId').val(company.Id).trigger('change');
使用

$('#LicenseOwnerId').change(function () {
    alert('select changed!');
});

没有其他方法(没有修改jquery核心方法),你必须自己触发事件。