我正在尝试使用Java Script重置输入字段,但它不能以我想要的方式工作。我试图理解为什么它以某种方式工作,而不是以另一种方式工作。你能解释一下原因吗?如果可能的话,请提供任何指示。谢谢。
我正在尝试重置的输入文本字段:
<input type="text" id="textInput" class="inp">
我这样定义了一个按钮:
<button id="resetButton">Reset</button>
我在reset按钮上创建了一个事件侦听器,并像下面这样使用它。
var rButton=document.getElementById("resetButton");
rButton.addEventListener("click", function() {
var inputTextValue=document.getElementById("textInput").value;
inputTextValue="";
});
这是我从输入文本中获取值的JS代码:
var inputTextValue=document.getElementById("textInput").value;
为了重置该值,我只是将其赋给空字符串:
inputTextValue="";
这段代码不起作用,但当我尝试像这样获取输入文本的引用时-
var inputText=document.getElementById("textInput");
试着像这样重置这个值,它是有效的-
inputText.value="";
所以,我试图理解,这两种方式的区别是什么,我做错了什么。
发布于 2018-10-05 04:10:42
您正在将输入字段的当前值复制到inputTextValue字符串中,然后将该副本替换为空字符串。这意味着你实际上并没有改变你的输入域。
试一试
document.getElementById("textInput").value = "";
或
var input = document.getElementById("textInput");
input.value = "";
而不是。
发布于 2018-10-05 04:12:50
这样,您可以重置或选择。
$(document).on("click", "#resetButton", function() {
var textInputValue = $("#textInput").val(); // get value
$("#textInput").val(""); // or reset value
});
或
var input = document.getElementById("textInput");
var resetButton = document.getElementById("resetButton");
resetButton.addEventListener("click", function() {
input.val(); // get value
input.val(""); // or reset value
});
编辑:我还没见过Javascript标签。抱歉的。:)
https://stackoverflow.com/questions/52654399
复制相似问题