我在JavaScript函数中的输入按钮类型中添加了.click
函数
.Click
函数调用另一个JavaScript函数。但由于某种原因,.click
函数一直被调用。即使元素没有点击也是如此
以下是我的代码。谢谢你帮助我。
function loadBook(URL) {
alert(URL);
};
function LoadAllBooks(URL, attachPoint) {
var title = "This is some code bad code";
var classname = title.replace(/\s/g, "");
var htmlString = '<div class="' + classname + '"><input type="button" value="' + title + '"></div>';
$(htmlString).appendTo(attachPoint).click(loadBook(URL));
};
attachPoint 是HTML中的引用,由以下行获取。
var attachpoint=document.querySelector('.buttonAttachPoint');
答案 0 :(得分:7)
容易犯错。通过在其中包含(URL)
参数,您实际上是立即调用loadBook
函数,而不是将loadBook
作为点击处理程序提供。
您需要做的更像是:
$(htmlString).appendTo(attachPoint).click( function(){ loadBook(URL) } );
创建一个运行loadBook的匿名函数,而不是直接运行loadBook。