簡體   English   中英

第二個輸入 onclick() function 不起作用

[英]Second inputs onclick() function doesn't work

有類似的問題,但不完全是我想要的。 我的表格有一個過濾器,帶有 1 個按鈕,可將文本框的值更改為當前日期。 這很好用,但在它旁邊,有一個按鈕可以清除文本框中的內容。 這第二個按鈕似乎不起作用。

我的代碼:

 function today() { var today = new Date(); var dd = String(today.getDate()).padStart(2, '0'); var mm = String(today.getMonth() + 1).padStart(2, '0'); var yyyy = today.getFullYear(); today = yyyy + '.' + mm + '.' + dd; document.getElementById("myInput").value = today; } function clear() { document.getElementById("myInput").value = ""; }
 <div class="form-inline"> <label for="myInput">Filter By:</label> <input class="input-xsmall" type="text" maxlength="10" placeholder="yyyy.mm.dd" id="myInput" style="width: 100px; margin-bottom: 10px; display: inline-block"> <input type="button" value="Today" onclick="today()"> <input type="button" value="Clear" onclick="clear()"> </div>

不知道如何讓它工作。 當我將第一個輸入中的 onclick function 切換為clear()時,它起作用了,所以由於某種原因,第二個輸入按鈕不起作用。 我該如何解決?

嘗試更改clear() function 的名稱。 並且還考慮研究事件處理程序

您需要將 js function 名稱從 clear() 更改為其他名稱。 因為 clear() 是一個 javascript 內置函數/方法。 Javascript 清除字段 Function 不工作?

clear不是保留關鍵字。 這是 scope 問題

但是,如果您想使用相同的 function 名稱。 可以試試下面的代碼。

將現有的 function onClick="clear()"更改為window.clear()可以解決您的問題。

參考這個答案

<input type="button" value="clear" onclick="window.clear()">

與這里寫的不同, clear不是js中保留的詞。

這是保留字列表(來自 s3 站點 這是保留字列表

Felix Kling在這里解釋一下,為什么有時它會充當保留字

或者只是添加一個事件監聽器

document.querySelector("[type='button'][value='Clear']").addEventListener("click", clear);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM