2012-03-07 61 views
0
echo '<a onclick="alert(\'alert\');"><img src= "1.jpeg"></a>'; 

它工作正常,但onclick事件不工作内部回声

echo '<a onclick="do();"><img src= "1.jpeg"></a>'; 

它不工作,如果我把里面做警报()之类

<script type="text/javascript"> 
function do() 
{ 
    alert("alert"); 
} 
</script> 

任何机构可以帮助在这。

+3

那么,为什么你标记为接受[你以前的模拟答案】(http://stackoverflow.com/questions/9601583/onclick-event-for-图像标签内的PHP回声 - 是 - 不工作)? :o – 2012-03-07 13:40:36

+0

它在第一个条件下工作时,我标记。但当我检查与第二它不工作。 – AshokiPhone 2012-03-07 13:45:15

+0

我是新来这个网站..只是我只是混淆这个评论样式和options.And我只是错过了链接后,我给了标记。 – AshokiPhone 2012-03-07 13:51:30

回答

1

do是javascript中的保留字。试着将方法命名为别的东西。

+0

即使没有工作,我试着用机智的名字回声''; – AshokiPhone 2012-03-07 13:52:38

+1

@AshokiPhone您可以使用[Chrome网络检查器](http://code.google.com/chrome/devtools/docs/overview.html#access)或Firefox [Firebug](http://getfirebug.com/)阅读JavaScript解析器给你的错误。它应该是一个很好的帮助 – 2012-03-07 13:59:01

+0

然后它听起来像JavaScript没有加载,因为它应该是。你能否在你使用代码的上下文中详细说明你的原始问题?你如何加载JavaScript等 – AndersDaniel 2012-03-07 13:59:08

1

您不能有一个名为do()的函数。将名称更改为其他名称。此外,它是使用像一个好主意:

echo '<a href="javascript:void(0)" onclick="your_function();return false;"> 
     <img src="img.jpg"> 
     </a>'; 
+1

请'返回false' onclick而不是'javascript:void(0)' – mplungjan 2012-03-07 13:49:19

+0

@mplungjan:我希望编辑是你所说的应该做的? – gentrobot 2012-03-07 13:59:51

+0

是的,但保留HREF - 我喜欢HREF =“#”但其他人在SO没有,因为它重新加载页面,但只有当JavaScript由于返回false而关闭 – mplungjan 2012-03-07 14:01:14