[英]Set value of element using an input variable
我有一个 js 函数, id_2
根据id_2
的值设置id_1
的值。 它看起来像下面这样:
function set_value(id_1, id_2, url){
var id_1_value;
id_1_value = $(id_1).val();
var value;
...
/* calculation etc. */
document.getElementById(id_2).value = value;
};
该函数通过像onchange='set_value(this, id_2)'
的 onchange 方法链接到id_1
html 元素。
如果我更改id_1
的值,该函数将不起作用,并且在控制台中出现以下错误:
Unable to set property 'value' of undefined or null reference
但是如果我在函数中硬编码document.getElementById('id_2')
它工作正常。 我如何编写这个函数,以便我可以成功地将元素 id 变量传递给它? 我想对你看到的不同元素重用这个函数......
您的set_value
函数应如下所示。
function set_value(id_1, id_2, url) {
var id_1_value = $(id_1).val();
/* calculation etc. */
if ($(id_2).length !== 0)
{
$(id_2).val(id_1_value);
}
}
您是否将“#id_2”传递给 set_value 参数?
如果是这样,那意味着它会返回 null。
// The function should be called like this
var id_2 = "id_2";
set_value(this, id_2, blah...)
像这样改变电话
onchange='set_value(this, "id_2")'
第二个参数应作为字符串传递。
试试下面的代码:
function set_value(id_1, id_2, url){
var id_1_value = $(id_1).val();
var value;
...
/* calculation etc. */
document.getElementById(id_2).value = value;
};
和 onchange 功能
onchange="set_value(this, 'id_2')"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.