为什么浏览器不't火灾变化事件

Why browser doesn't fire change event

本文关键字:火灾 变化 事件 浏览器 为什么      更新时间:2023-09-26

我有

<input type="text" id="pies" value="" />

$( document ).ready(function() {
    $('#pies').on('change', function() { alert('cham'); });
    $('#pies').focus();
    $('#pies').val('kooooo');
    $('#pies').blur();
});

为什么浏览器不触发更改事件?我如何使浏览器将触发更改事件。我不想手动触发"更改",因为如果我要触发更改,在某些情况下,触发更改将被触发两次。这只是一个例子。

使用调用更改

$('#pies').change();

您必须手动完成

$('#pies').change();

正如医生所说

当元素的值发生更改时,会将更改事件发送到该元素。此事件仅限于元素、框和元素。对于选择框、复选框和单选按钮,当用户用鼠标进行选择时,事件会立即激发,但对于其他元素类型,事件会推迟到元素失去焦点。

在自动完成的情况下,尝试执行$("#pies").trigger("autocompleteselect");

最好使用keypress而不是change