0

我正在尝试使用 javascript 将参数传递给 onclick 函数

我以前有

 title = createElement('span', {className: 'title', innerHTML: this.Title,
            ID: this.ID, Title: this.Title, onclick: TitleOnClick});

我正在传递参数'test'..

    title = createElement('span', {className: 'title', innerHTML: this.Title,
            ID: this.ID, Title: this.Title, onclick: TitleOnClick(test)});


function TitleOnClick(test){
       alert(test);
}

似乎不起作用。我做错了吗?非常感谢!

4

2 回答 2

3

当您以这种方式调用它时,您所做的是将 的值设置为onclick等于 的 RETURN 值TitleOnClick(test)。相反,您可能想要做的是:

onclick: TitleOnClick(注意没有()的)-然后在该方法中,test根据上下文得出 的值。

于 2012-09-20T17:19:48.623 回答
1

您可以将对“TitleOnClick”的调用包装在另一个函数中:

title = createElement('span', {className: 'title', innerHTML: this.Title,
        ID: this.ID, Title: this.Title, onclick: function() { TitleOnClick(test); }});

(假设变量“test”在某处声明,就像你的例子一样。)

于 2012-09-20T17:21:34.160 回答