gpt4 book ai didi

javascript - javascript中的createElement设置 "onchange"属性

转载 作者:太空宇宙 更新时间:2023-11-04 14:19:36 33 4
gpt4 key购买 nike

我正在尝试使用“onchange”属性动态添加一个新的输入字段:

    var f = document.getElementById("dN[" + fieldsd + "]"); // create/insert new
el = document.createElement("input");
el = f.appendChild(el);
el.name = "dName[" + fieldsd + "]";
el.id = "dName[" + fieldsd + "]";
el.onchange = "validation()";

我也试过 setAttribute 两者都不适合我。有没有办法使这项工作或变通办法?

最佳答案

在 JavaScript 中,将 onchange 属性设置为指向函数的指针,而不是实际的字符串:

var f = document.getElementById("dN[" + fieldsd + "]"); // create/insert new
el = document.createElement("input");
el = f.appendChild(el);
el.name = "dName[" + fieldsd + "]";
el.id = "dName[" + fieldsd + "]";
el.onchange = validation;

(你有一个名为validation的函数)

如果需要传递参数,将onchange设置为调用验证函数的函数:

el.onchange = function () {  
validation(param1, param2, ...);
};

或者,如果您想要来自输入本身的信息,您可以在validation 函数中使用this 关键字:

el.onchange = validation;

....

function validation() {
// this is the "context" for the function. In this case
// the element that changed.
var value = this.value;

}

关于javascript - javascript中的createElement设置 "onchange"属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15341512/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com