嗨,我是新來的JS和可以使用一些幫助。點擊沒有按鈕的事件觸發器點擊
所以我基本上是試圖從一個textarea一些文本發送到上一個提交按鈕單擊事件稱爲inputFromText
功能,但不知何故,該功能被點擊之前(通過電子打開HTML窗口時)被觸發並沒有任何反應當你點擊按鈕後。
如何防止這種情況發生?
<body>
<form>
<div class="form-group">
<textarea class="form-control" rows="5" id="txa_trainingText"></textarea>
<button type="submit" class="btn btn-default" id="btn_submit">Submit</button>
</div>
</form>
<script>
const trainingText = document.getElementById("txa_trainingText").value;
document.getElementById("btn_submit").addEventListener("click", inputFromText(trainingText));
function inputFromText(text) {
...
}
</script>
</body>
我發現,使用功能沒有文本參數當一個人能解決的書面問題:
function inputFromText(e) {
e.preventDefault();
...
}
[addEventListener在沒有我的情況下調用該函數時可能會重複](https://stackoverflow.com/questions/16310423/addeventlistener-calls-the-function-without-me-even-asking-it-to ) – DocMax
您需要將引用作爲第二個參數傳遞給'addEventListener'。正如所寫的,您正在調用該函數並傳遞返回的值。查看鏈接問題以獲取更詳細的答案。 – DocMax