更改值时如何防止输入框事件的传播?

时间:2016-11-24 15:03:02

标签: javascript jquery events javascript-events

我理解事件传播可以通过在“click”事件上使用event.stopPropagation()来停止。我不明白,在我的情况下是否可以做这样的事情以防止传播。

当有输入时,我有一个绑定到文本框的默认事件:

$('#inputbox').on('input', function () {
      // something
        }

在代码的其他地方,我想以编程方式在文本框中添加文本,但我不想触发默认事件。我只是希望文本框具有新文本,而不会触发任何事件:

$('#inputbox').val(values);

上面的代码触发输入事件。在这种情况下如何使用stopPropagation()函数(使用.val()函数)?我想避免进入.on('input')函数而不更改它。

1 个答案:

答案 0 :(得分:1)

试试这个:

$('#inputbox').on('input', function (event) {
    event.stopPropagation();//for internet explorer
    event.preventDefault();//for chrome/firefox
});