试图用javascript将我的所有输入字段作为目标
Trying to target all my input field in javascript
我无法让这个代码发挥作用,我正试图将我的所有输入字段设置为具有onblur和onfocus效果,但根本没有成功。请帮帮我。
我还尝试使用getElementsByClassName,但没有成功…:(
var inputArray = new Array( "answers01", "answers02", "answers03", "answers04", "answers05", "answers06" );
for( var i = 0; i < inputArray.length; i++ ) {
answerInput = document.getElementById(inputArray[x]).value;
}
var inputField = answerInput;
inputField.onfocus = function() {
if (inputField.value == "Place your answer here") {
inputField.value = "";
}
};
inputField.onblur = function() {
if (inputField.value == "") {
inputField.value = "Place your answer here";
}
};
有一些问题。首先,您需要将函数移动到for循环中。否则,它们将仅附加到最后一个输入框。其次,不应该在函数中使用input.value,而应该使用this.value。在事件处理程序中,"this"指的是触发事件的元素。
以下是适用于我的完整代码:
var inputArray = document.getElementsByTagName("input");
for (var i = 0; i < inputArray.length; i++ ) {
answerInput = inputArray[i];
answerInput.onfocus = function() {
if (this.value == "Place your answer here") {
this.value = "";
}
}
answerInput.onblur = function() {
if (this.value == "") {
this.value = "Place your answer here";
}
}
}
您有一个打字错误:
answerInput = document.getElementById(inputArray[x]).value;
将此行更改为:
answerInput = document.getElementById(inputArray[i]).value;
你能发现零钱吗?
此外,您应该在循环中分配onfocus
和onblur
函数,否则只有最后一个输入才能工作。
var inputArray = new Array( "answers01", "answers02", "answers03", "answers04", "answers05", "answers06" );
for( var i = 0; i < inputArray.length; i++ ) {
answerInput = document.getElementById(inputArray[i]).value;
var inputField = answerInput;
inputField.onfocus = function() {
if (inputField.value == "Place your answer here") {
inputField.value = "";
}
};
inputField.onblur = function() {
if (inputField.value == "") {
inputField.value = "Place your answer here";
}
};
}
正如John在他的代码中所展示的那样,使用getElementsByTagName("input");
获取所有<input>
元素可能是明智的。
相关文章:
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 而循环只设置php中输入字段中的第一个值
- 使用 Javascript 将字段输入除以 12
- 合并来自多个字段输入的搜索结果
- 使用 Javascript 实时打印字段输入数据
- 防止AngularJS中跨路由的字段输入重复
- 引用Iframe中的字段输入
- 禁用html5”;“必需”;不显示窗体部分时的字段输入属性
- JavaScriptFormValidation-需要特定的字段输入,但使用大写/小写
- 验证VF页面上所需字段输入的Javascript不起作用
- 在没有
- 使用Jquery将字段输入值作为查询字符串附加到url
- HTML5 jQuery选择所有日期字段'输入:date'
- 将字段输入复制到另一个字段输入
- 向图像添加字段(输入)
- 动态添加字段输入不会存储值并传递给控制器
- 向输入字段输入键击
- 我如何通过javascript验证datetime字段输入
- HTML如何将用户字段输入作为json对象发送
- 如何根据'select' onchange事件将值填充到第二个输入字段?输入