如何在javascript中添加eventListener?

时间:2017-11-20 13:58:19

标签: javascript jquery html ejs

我是前端问题的新手。 当用户更改此html输入字段时,我想发送他已更改的数据的值。

目前,用户只拥有预先发送到此表单的数据以及我要更改的任何数据,然后单击“保存”按钮。它只是不从表单发送正确的数据。它发送预定义的值。

<script>
    document.getElementById("<%- fieldName%>").addEventListener("onchange", myFunction());
    function myFunction(){
        document.getElementById('<%- fieldName%>').innerHTML = "Hello World!";
    }

</script>
<div class="AknFieldContainer">
<div class="AknFieldContainer-inputContainer">
    <input id="<%- fieldName%>"
    class="AknTextField <%- className %>"
    type="textarea"
    value="<%- value %>"
    >
</div>

此代码显然不起作用。所以对于任何用户更改值,我想发送它。 我想这里有十几个答案,但我不知道在哪里找到它。有人可以参考我的解决方案或在下面的评论中建立解决方案吗?如果需要,我甚至可以使用Jquery。如果不需要,我宁愿在普通的Javascript中进行。

编辑:

所以这里正确的问题是如何使输入字段的值动态且可靠地从输入中获取?

2 个答案:

答案 0 :(得分:2)

您需要将函数作为回调传递给addEventListener。现在你传递一个函数执行结果。

按如下方式更改代码:

document.getElementById("<%- fieldName%>").addEventListener("change", myFunction);

答案 1 :(得分:1)

脚本应为:

<script>
    function myFunction(){
        document.getElementById('<%- fieldName%>').innerHTML = "Hello World!";
    }

    document.getElementById("<%- fieldName%>").addEventListener("change", myFunction);

</script>