首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法使用Vanilla Javascript重置输入文本字段

无法使用Vanilla Javascript重置输入文本字段
EN

Stack Overflow用户
提问于 2018-10-05 04:07:47
回答 2查看 172关注 0票数 1

我正在尝试使用Java Script重置输入字段,但它不能以我想要的方式工作。我试图理解为什么它以某种方式工作,而不是以另一种方式工作。你能解释一下原因吗?如果可能的话,请提供任何指示。谢谢。

我正在尝试重置的输入文本字段:

代码语言:javascript
复制
<input type="text" id="textInput" class="inp">

我这样定义了一个按钮:

代码语言:javascript
复制
<button id="resetButton">Reset</button>

我在reset按钮上创建了一个事件侦听器,并像下面这样使用它。

代码语言:javascript
复制
var rButton=document.getElementById("resetButton");

rButton.addEventListener("click", function() {
    var inputTextValue=document.getElementById("textInput").value;
    inputTextValue="";
});

这是我从输入文本中获取值的JS代码:

代码语言:javascript
复制
 var inputTextValue=document.getElementById("textInput").value;

为了重置该值,我只是将其赋给空字符串:

代码语言:javascript
复制
inputTextValue="";

这段代码不起作用,但当我尝试像这样获取输入文本的引用时-

代码语言:javascript
复制
var inputText=document.getElementById("textInput");

试着像这样重置这个值,它是有效的-

inputText.value="";

所以,我试图理解,这两种方式的区别是什么,我做错了什么。

EN

回答 2

Stack Overflow用户

发布于 2018-10-05 04:10:42

您正在将输入字段的当前值复制到inputTextValue字符串中,然后将该副本替换为空字符串。这意味着你实际上并没有改变你的输入域。

试一试

代码语言:javascript
复制
document.getElementById("textInput").value = "";

代码语言:javascript
复制
 var input = document.getElementById("textInput");
 input.value = "";

而不是。

票数 2
EN

Stack Overflow用户

发布于 2018-10-05 04:12:50

这样,您可以重置或选择。

代码语言:javascript
复制
$(document).on("click", "#resetButton", function() {
    var textInputValue = $("#textInput").val(); // get value
    $("#textInput").val(""); // or reset value
});

代码语言:javascript
复制
var input = document.getElementById("textInput");
var resetButton = document.getElementById("resetButton");

resetButton.addEventListener("click", function() {
    input.val(); // get value
    input.val(""); // or reset value
});

编辑:我还没见过Javascript标签。抱歉的。:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52654399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档