我试图更改"文本框"根据选择的单选按钮显示不同的内容。这个框只是一个id为"输出"的div部分。当我运行以下javascript时,我的参数似乎被忽略了" hi"无论我按哪个按钮都插入。这是Javascript相等运算符的问题,还是我已经完成函数调用的方式?
window.onload = function() {
document.getElementById("medium").onclick = size(1);
document.getElementById("big").onclick = size(2);
document.getElementById("bigger").onclick = size(3);
};
function size(param) {
if (param === 3) {
document.getElementById("output").innerHTML = "hi";
}
}
答案 0 :(得分:0)
这一行:
document.getElementById("medium").onclick = size(1);
将onclick属性设置为size函数的结果。不是函数指针。
所以这是公平的:
var x = size(1);
//x is null
document.getElementById("medium").onclick = x;
将您的功能包裹在另一个功能中,以便将onclick设置为功能指针而不是结果,即:
document.getElementById("medium").onclick = function() {size(1);};