如何更改输入字段的值后退焦点
How to Change the Value of an Input Field Back off Focus
我已经设法将输入字段 onfocus 的文本值更改为空,但我不知道如何让它在网页上其他任何地方的 onclick 上变回
HTML:
<input type="text" value="this is value" id="text">
JS:
document.getElementById("text").onfocus = function() {
var value = "on"
if (value==="on") {
document.getElementById("text").value=""
value="off"
} else {
document.getElementById("text").value="this is value"
value="on"
}
window.onclick = function() {
document.getElementById("text").value="this is value"
}
}
我不确定我是否理解正确。但我认为你在这里不需要这么复杂的东西,如果你愿意,你可以简单地使用 placeholder
. Then you can clear it on the input focus with onfocus
event and again show it with onblur
事件。
<input type="text" placeholder="this is value" onfocus="this.placeholder = ''" onblur="this.placeholder = 'this is value'" id="text">
否则,您可以简单地创建占位符并保留它,直到用户用他们想要的值填充输入。
<input type="text" placeholder="this is value" id="text">
我不太清楚你在尝试什么,但我想你可能需要一个 blur
活动。
var input = document.getElementById("text");
var value = "on";
input.addEventListener("focus", function() {
if (value == "on") {
input.value = "";
value = "off";
}
else {
text.value = "this is value";
value = "on";
}
});
input.addEventListener("blur", function () {
input.value = "this is value";
value = "on";
});
<input type="text" value="this is value" id="text">
onfocus
事件旁边是 onblur
事件。第二个将被调用,当其他东西被喜欢并且输入失去焦点时。检查这个 article.
以下代码应该可以满足您的要求:
document.getElementById("text").onfocus = function() {
document.getElementById("text").value=""
}
document.getElementById("text").onblur = function() {
document.getElementById("text").value="this is value"
}
我已经设法将输入字段 onfocus 的文本值更改为空,但我不知道如何让它在网页上其他任何地方的 onclick 上变回 HTML:
<input type="text" value="this is value" id="text">
JS:
document.getElementById("text").onfocus = function() {
var value = "on"
if (value==="on") {
document.getElementById("text").value=""
value="off"
} else {
document.getElementById("text").value="this is value"
value="on"
}
window.onclick = function() {
document.getElementById("text").value="this is value"
}
}
我不确定我是否理解正确。但我认为你在这里不需要这么复杂的东西,如果你愿意,你可以简单地使用 placeholder
. Then you can clear it on the input focus with onfocus
event and again show it with onblur
事件。
<input type="text" placeholder="this is value" onfocus="this.placeholder = ''" onblur="this.placeholder = 'this is value'" id="text">
否则,您可以简单地创建占位符并保留它,直到用户用他们想要的值填充输入。
<input type="text" placeholder="this is value" id="text">
我不太清楚你在尝试什么,但我想你可能需要一个 blur
活动。
var input = document.getElementById("text");
var value = "on";
input.addEventListener("focus", function() {
if (value == "on") {
input.value = "";
value = "off";
}
else {
text.value = "this is value";
value = "on";
}
});
input.addEventListener("blur", function () {
input.value = "this is value";
value = "on";
});
<input type="text" value="this is value" id="text">
onfocus
事件旁边是 onblur
事件。第二个将被调用,当其他东西被喜欢并且输入失去焦点时。检查这个 article.
以下代码应该可以满足您的要求:
document.getElementById("text").onfocus = function() {
document.getElementById("text").value=""
}
document.getElementById("text").onblur = function() {
document.getElementById("text").value="this is value"
}