【问题标题】:My onclick Javascript function get executed without clicking我的 onclick Javascript 函数无需单击即可执行
【发布时间】:2014-01-21 23:18:06
【问题描述】:

我想在单击页面上的按钮时执行一些操作,但是我的函数在没有单击按钮的情况下执行,并且当我使用 firebug 检查日志时,我收到“未定义”消息。到目前为止,以下是我的代码 sn-p。

var email = example@example.com   
"<button class='btn btn-warning' onclick ='"+addNote(email)+"' >Add Note</button>"

function addNote(youremail){
     alert("Your email is "+ youremail);
}

使用上面的代码 sn-p 输出将是 Your email is example@example.com。

【问题讨论】:

标签: javascript onclick


【解决方案1】:

那是因为您调用该函数,而不是将其添加到您的字符串中。

"<button class='btn btn-warning' onclick ='addNote(email)' >Add Note</button>"

看这个例子:

http://jsfiddle.net/sP35v/

【讨论】:

  • 这会不会把参数当作普通字符串而不是变量?
  • @fanbondi 不,它会将其视为变量。如果电子邮件是一个字符串,您的事件将如下所示: onclick="addNote('email')" -> 看到区别了吗?
  • 哦,好的,我知道了,但是在控制台中它说电子邮件未定义,即使我在调用它之前定义了它。
  • @fanbondi 你引用了那个示例电子邮件地址吗?请参阅我在帖子中包含的 jsfiddle 链接。它将显示一个工作版本。
猜你喜欢
  • 2020-07-10
  • 2017-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-28
  • 1970-01-01
  • 2021-06-05
相关资源
最近更新 更多