gpt4 book ai didi

javascript - 更改元素值时调用的更改事件 IE 11/Angular

转载 作者:太空狗 更新时间:2023-10-29 13:29:03 26 4
gpt4 key购买 nike

我已经创建了一个指令来处理文件。当我更改文件或选择一个新文件时,我调用此代码:

element.val('');

我这样做是为了能够删除选定的文件并在之后选择相同的文件。如果我不这样做,当我删除所选文件并再次选择相同文件时,将不会调用 change 事件,我无法执行我需要执行的操作。

我只需要知道是否有一种方法可以避免 IE 在更改输入值时调用更改事件。

我搜索了一下,发现了这样的评论:

文本框和 textarea 元素上的 onchange 事件仅在元素失去焦点时触发,并且如果它的值现在不是它获得焦点时的值。

因此,当我只是以编程方式更改 de 值时,不应调用此更改事件。

有什么想法吗?

编辑:

我用 behaviour 创建了一个 jsfiddle

最佳答案

似乎 element.val('') 发出了一个新的 change 事件,导致对您的监听器的多次调用。也就是说,您可以通过检查输入值来避免这种奇怪的行为,如下所示:

element.bind('change', function(){
if(!element.val()) {
return;
}
element.val('');
// code goes here
});

关于javascript - 更改元素值时调用的更改事件 IE 11/Angular,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44524390/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com