[英]Getting event listener to fire
我有一個與PHP表單結合使用的腳本。 我正在嘗試獲取一個計數器字段,該字段放在我的代碼中,以便在填寫完員工ID字段后在表格上加一秒。
<script type="text/javascript">
var counter = 0;
var timer;
var employee = document.getElementsByName("employeeID")[0];
var employeeVal = document.getElementsByName("employeeID")[0].value;
employee.addEventListener("onchange", startCount);
function countUP () {
counter = counter + 1; //increment the counter by 1
document.getElementsByName("timer_container")[0].value = counter;
}
function startCount () {
timer=setInterval('countUP()', 1000 );
}
function readonly() {
document.getElementsByName("timer_container")[0].readOnly = true;
}
</script>
我嘗試了不同的功能來查看事件監聽器是否正在觸發。 我也嘗試過使用其他事件,例如onclick,onblur和沒有任何運氣。 我已經使用了timer函數,並將其設置為直接在HTML的body標簽中onload,並且可以正常工作。 但是,我需要它能夠在有人將信息輸入到employee字段時立即運行。
首先,使用.addEventListener
時不要在事件名稱中使用on
。 on
前綴僅用於具有HTML事件屬性的內聯事件綁定(這就是為什么它在<body onload=...>
為您工作的原因)。 內聯事件HTML屬性不應該再使用了 。 因此,您的行應為:
employee.addEventListener("change", startCount);
如果要在輸入數據時觸發它,請使用input
事件而不是change
事件。
employee.addEventListener("input", startCount);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.