这在用户通过ajax在单个输入表单上提交输入后清除输入。
var tweet_input = document.getElementById( 'tweet_input' );
tweet_input.value='';
tweet_input.blur();
然而,在3输入字段orm上,这不是:
var input_url = document.getElementById( 'bookmark_input_url' );
input_url.value='';
var input_title = document.getElementById( 'bookmark_input_title' );
input_title.value='';
var input_tag = document.getElementById( 'bookmark_input_tag' );
input_tag.value='';
input_title.blur();
input_url.blur();
input_tag.blur();
只有最后一个元素实际上是模糊的。不确定其他两个是怎么回事,或者如何排除故障。
基本上我有一个触发模糊()的事件监听器,它们可以在实际的用户模糊()上正常工作,但是当我尝试以编程方式启动它们时,只有一个可以工作。
答案 0 :(得分:4)
需要首先关注。
input_title.focus();
input_title.blur();
...
答案 1 :(得分:0)
在我的情况下,这种方法很好:
const fireEvent = (element, eventType="blur") => element && element.dispatchEvent(new Event(eventType));
现在,我们可以在任何要触发附加到任何元素的事件的地方调用此函数。
fireEvent(input_title)