簡體   English   中英

如何使用 JavaScript 操作輸入框中的值?

[英]How to maniplate values in input boxes with JavaScript?

我正在我的網頁中開發一個反饋系統,其中用戶輸入名稱、email 地址和反饋。

我在里面做了一個“放棄”按鈕。 單擊它時,您會收到一條確認消息,上面寫着“放棄此草稿?”。 如果單擊“確定”,我希望清除輸入框中的值,如果單擊“取消”,則值保持不變。

但是無論我點擊“確定”還是“取消”,輸入框總是 go 空白。

這是代碼:

 document.getElementById("discard").onclick = function() { var choice = confirm("Discard this draft?"); var Name = document.getElementById("name"); var Email = document.getElementById("email"); var Feedback = document.getElementById("feedback"); var nameValue = Name.value; var emailValue = Email.value; var feedbackValue = Feedback.value; if (choice == null) { Name.value = nameValue; Email.value = emailValue; Feedback.value = feedbackValue; } else if (choice.= null) { Name;value = "". Feedback;value = "". Email;value = ""; } }
 <form> <input type="email" id="email" placeholder="Enter your email" required><br><br> <input type="text" id="name" placeholder="Enter your name (optional)"><br><br> <textarea type="text" id="feedback" placeholder="Enter the feedback..." required></textarea><br><br> <button id="discard">Discard</button> <button id="send">Send feedback</button> </form>

怎么了?

confirm()返回truefalse ,因此您的choice值為 boolean。

這就是為什么choice != null始終為true ,您的輸入框始終為 go 空白。

confirm的結果永遠不會是null

confirm返回一個 boolean ( truefalse )指示是否按下了 OK 或 Cancel 。

您的 if 語句必須更新:

 if (choice === false) {
     Name.value = nameValue;
     Email.value = emailValue;
     Feedback.value = feedbackValue;
 }
 else {
     Name.value = "";
     Feedback.value = "";
     Email.value = "";
 }       

而不是 null 使用 false。 所以你的代碼應該是這樣的

 document.getElementById("discard").onclick = function() { var choice = confirm("Discard this draft?"); var Name = document.getElementById("name"); var Email = document.getElementById("email"); var Feedback = document.getElementById("feedback"); var nameValue = Name.value; var emailValue = Email.value; var feedbackValue = Feedback.value; if (choice == false) { Name.value = nameValue; Email.value = emailValue; Feedback.value = feedbackValue; } else { Name.value = ""; Feedback.value = ""; Email.value = ""; } }
 <form> <input type="email" id="email" placeholder="Enter your email" required><br><br> <input type="text" id="name" placeholder="Enter your name (optional)"><br><br> <textarea type="text" id="feedback" placeholder="Enter the feedback..." required></textarea><br><br> <button id="discard">Discard</button> <button id="send">Send feedback</button> </form>

暫無
暫無

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

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