我理解事件传播可以通过在“click”事件上使用event.stopPropagation()来停止。我不明白,在我的情况下是否可以做这样的事情以防止传播。
当有输入时,我有一个绑定到文本框的默认事件:
$('#inputbox').on('input', function () {
// something
}
在代码的其他地方,我想以编程方式在文本框中添加文本,但我不想触发默认事件。我只是希望文本框具有新文本,而不会触发任何事件:
$('#inputbox').val(values);
上面的代码触发输入事件。在这种情况下如何使用stopPropagation()函数(使用.val()函数)?我想避免进入.on('input')
函数而不更改它。
答案 0 :(得分:1)
试试这个:
$('#inputbox').on('input', function (event) {
event.stopPropagation();//for internet explorer
event.preventDefault();//for chrome/firefox
});