[英]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()
返回true
或false
,因此您的choice
值为 boolean。
这就是为什么choice != null
始终为true
,您的输入框始终为 go 空白。
confirm
的结果永远不会是null
confirm
返回一个 boolean ( true
或false
)指示是否按下了 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.