Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过Javascript在文本框中输入值_Javascript - Fatal编程技术网

如何通过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>