如何在不同的输入标签上执行函数? Javascript代码

如何在不同的输入标签上执行函数? Javascript代码,javascript,Javascript,对于每个输入元素 我想我应该使用它,但我不知道放在哪里。你想循环每个输入元素并添加一个事件吗document.getElementsByTagName(“输入”)返回一个数组,因此可以使用循环遍历它 JavaScript: // This is a function which disables an input element // Notice I used "this" instead of document.getElementsByTagName("input")[some numbe

对于每个输入元素


我想我应该使用它,但我不知道放在哪里。

你想循环每个输入元素并添加一个事件吗
document.getElementsByTagName(“输入”)
返回一个数组,因此可以使用循环遍历它

JavaScript:

// This is a function which disables an input element
// Notice I used "this" instead of document.getElementsByTagName("input")[some number]
// "this" refers to the input element that was clicked
function disableBtn() {
  this.parentNode.nextElementSibling.querySelector('input[type="button"]').disabled = false;                       
}
// Get every single input element
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; ++i) {
  // Loop through the input elements, and add a "click" event
  var input = inputs[i];
  input.addEventListener("click", disableBtn, false);
}
//这是一个禁用输入元素的函数
//注意,我使用了“this”而不是document.getElementsByTagName(“输入”)[一些数字]
//“this”是指被单击的输入元素
函数disableBtn(){
this.parentNode.nextElementSibling.querySelector('input[type=“button”]”)。disabled=false;
}
//获取每个输入元素
var inputs=document.getElementsByTagName(“输入”);
对于(变量i=0;i
代码:

将您的功能更改为:

function disableBtn(el) {
    el.parentNode.nextElementSibling.querySelector("input").disabled = false;
}
处理程序:

onclick="disableBtn(this)" 

演示:


说明:

因此,现在处理程序将单击的当前元素传递给
disableBtn
函数

那么这个功能

  • 获取单击的元素并遍历到其
    .parentNode
  • 向前移动到
    .nextElementSibling
    ,这是下一个
    div
  • 然后使用
    .querySelector()
    div
    中搜索它找到的第一个
    输入
  • 输入的
    .disabled
    属性设置为
    false

因此,在您单击输入元素后,应该启用此输入?是的,它应该删除desable属性,它确实这样做了,但我希望它是dyname,而不是只处理我输入的索引,如[1]嘿,伙计们,你们是在试图解决它还是不理解我的问题?谢谢,这很好。如果你不介意的话,你能告诉我,只有当我在输入标签中添加或删除了一些东西时,如何让它删除desable属性,因为我使用这些输入来显示来自的值吗database@user2270924如果这是你的目标,请问一个不同的问题。我现在不能问,因为他们阻止我在i日提问,因为有时我不能请举例说明我的问题
// This is a function which disables an input element
// Notice I used "this" instead of document.getElementsByTagName("input")[some number]
// "this" refers to the input element that was clicked
function disableBtn() {
  this.parentNode.nextElementSibling.querySelector('input[type="button"]').disabled = false;                       
}
// Get every single input element
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; ++i) {
  // Loop through the input elements, and add a "click" event
  var input = inputs[i];
  input.addEventListener("click", disableBtn, false);
}
function disableBtn(el) {
    el.parentNode.nextElementSibling.querySelector("input").disabled = false;
}
onclick="disableBtn(this)"