如何通过Javascript在文本框中输入值
我试图通过脚本/自动化在浏览器中输入单词。以下是片段:如何通过Javascript在文本框中输入值,javascript,Javascript,我试图通过脚本/自动化在浏览器中输入单词。以下是片段: <div id="id1" class="class1" hidefocus="true" aria-label="Message Body" g_editable="true" role="textbox"
<div id="id1" class="class1"
hidefocus="true"
aria-label="Message Body"
g_editable="true"
role="textbox"
aria-multiline="true"
contenteditable="true"
tabindex="1"
spellcheck="true">
在这个文本框中,如何使用dispatchEvent输入诸如Hello World之类的文本?我知道这不是一个可以直接编写document.getElementbyIdid1.value='Hello World'的输入元素。我想我必须通过dispatchEvent解决这个问题,但我在这方面遇到了困难 document.getElementbyIdid1.innerText='Hello World这里是一个使用CustomEvent的解决方案,详细描述请参见
您的代码片段显示的div不是textareadocument.getElementbyIdid1.innerText='Hello World'或document.getElementbyIdid1.innerHTML='Hello World'就足够了。您认为为什么需要使用dispatchEvent?我想我必须使用dispatchEvent,因为这是一个div-不过我不确定。
<div
id="id1"
class="class1"
hidefocus="true"
aria-label="Message Body"
g_editable="true"
role="textbox"
aria-multiline="true"
contenteditable="true"
tabindex="1"
spellcheck="true">
</div>
<script type="text/javascript">
let event = new CustomEvent('sayHelloWorld', { detail: 'Hello, World!' });
let id1Div = document.getElementById("id1");
id1Div.addEventListener('sayHelloWorld', function (e) {
id1Div.innerText = e.detail;
}, false);
id1Div.dispatchEvent(event);
</script>