Javascript 带有传递参数onclick函数的函数创建按钮
有人能像我五岁一样解释一下为什么它在没有点击事件的情况下执行函数吗。以及如何修复它。谢谢Javascript 带有传递参数onclick函数的函数创建按钮,javascript,Javascript,有人能像我五岁一样解释一下为什么它在没有点击事件的情况下执行函数吗。以及如何修复它。谢谢 function test(){ alert("works"); } function createButton(name,location,id,funX){ var button = document.createElement("input"); button.type = "submit"; button.name = name; button.id = i
function test(){
alert("works");
}
function createButton(name,location,id,funX){
var button = document.createElement("input");
button.type = "submit";
button.name = name;
button.id = id;
button.onclick = funX;
var placeHolder = document.getElementById(location);
placeHolder.appendChild(button);
};
window.onload = function () {
createButton("Submit","content","submitEnd",test());
};
在函数中添加括号时,调用它。不是稍后,而是此时此地,然后返回函数返回的内容 默认情况下,javascript中的函数返回
未定义的
,除非您显式返回其他内容
你真正写的是
createButton("Submit", "content", "submitEnd", undefined);
最后一个未定义的是因为您调用了函数,它与
var result = test(); // undefined
createButton("Submit", "content", "submitEnd", result);
解决方法是引用函数,而不是调用它
createButton("Submit", "content", "submitEnd", test);
看,没有括号
你应该考虑一下教育事业,生活中最好的事情是!