用于将变量传递给函数的javascript语法

时间:2012-07-22 15:59:08

标签: javascript syntax hyperlink

我有一个JavaScript超链接,它没有将变量传递给函数,这无疑是由于语法原因造成的。有人可以发现错误。

jsfiddle:http://jsfiddle.net/kSVVX/

JS

function follow(id){
    alert(id);
}

HTML

<a href='javascript:void(0);' onclick= 'follow('1');'><img src='images/test.gif' border=0 alt='follow'></a>

注意:我使用所有撇号的原因是这个链接实际上是从php中回显的,其中长引号括在引号中(因为字符串中的某些内容必须在撇号中。)我有一种感觉是问题的根源,但没有成功通过改变标点符号来解决它。

感谢您的任何建议。

1 个答案:

答案 0 :(得分:5)

您正在使用'字符来界定JavaScript字符串它嵌入的HTML属性值。

这导致:

onclick= 'follow('

或者:

  • 避免使用内在事件属性(无论如何都应该这样做,建议使用unobtrusive JavaScript)。
  • 使用不同的字符来分隔属性值(onclick="follow('1');")或字符串(onclick= 'follow("1");'
  • 使用HTML实体在属性值的数据中包含您使用的引号(onclick= 'follow(&#39;1&#39;);'