2015-11-06 40 views
1

我试图使一个div弹出当我按下图像,但是当我按下图像没有任何反应。它工作,如果我使用循环外的代码,所以obv它与循环有关,但是什么?div弹出不似乎工作

<table> 
     <?php 
      while($row = mysqli_fetch_array($result)){ 

      echo "<tr><td> <a href = 'javascript:void(0)' onclick = 'document.getElementById('a').style.display='block';document.getElementById('b').style.display='block''><img src='1.jpg' id='s_album' style='align:center;'></a> 

      } 
     ?> 
    </table> 
      <div id='a' class='white_content'>text <a href = 'javascript:void(0)' onclick = 'document.getElementById('a').style.display='none';document.getElementById('b').style.display='none'>close</a></div> 
      <div id='b' class='black_overlay'></div></td></tr>"; 
+1

您添加多个'div'-S与同'id'。 – FirstOne

+0

我非常鼓励的JavaScript这样的,有一个[你停止写作在线各种各样的原因](http://robertnyman.com/2008/11/20/why-inline-css-and-javascript-code-is-such-a-bad-thing/)这样做。无论如何,我相信Olavi Sau的回答是针对这个特定问题的正确解决方案 – roperzh

+0

甚至比这更好 – NoobTW

回答

1

你的onclick会被错误地呈现,更精确地说,你有多个单引号,那些将被渲染为是,因此,你的onclick脚本过早结束。

刚刚逃脱双引号这样的\”

document.getElementById(\"a\").style.display=\"block\";document.getElementById(\"b\").style.display=\"block\"' 
+0

非常感谢:D – anon

+0

没问题:)你可以标记为正确的:)? –

+0

绝对需要等待5分钟才能做到这一点 – anon