0

.click在 JavaScript 函数内的输入按钮类型中添加了一个函数。
.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');
4

1 回答 1

7

容易出错。通过在其中包含(URL)参数,您实际上是在loadBook立即调用该函数,而不是loadBook作为单击处理程序提供。

你需要做的更像是:

$(htmlString).appendTo(attachPoint).click( function(){ loadBook(URL) } );

创建一个运行 loadBook 的匿名函数,而不是直接运行 loadBook。

于 2013-03-27T02:24:40.680 回答