2013-09-29 84 views
0

我试图使用jQuery和Reveal Modal jQuery plugin创建基于this example的模态。jQuery莫代尔不显示

我的PHP代码:

IF ($q3) 
    { 
     IF ($admin_default_activate == 0) 
     { 
      echo "<span style=\"color:green\">Your account is created, but an Administrator must activate it!</span>"; 
     } 
     ELSE 
     { echo " 

      <div id=\"modal\"> 
       <div id=\"heading\"> 
        Your mailaccount is activated! 
       </div> 

       <div id=\"boxcontent\"> 
        <p><b>Account Details:</b><br><b>Email:</b> $user<br /><b>Password:</b> $userpass1<br><br><b>Settings:</b><br><b>POP3:</b> mail.website.se (Port 110)<br><b>IMAP:</b> mail.website.se (Port 143)<br><b>SMTP:</b> mail.website.se (Port 25/587)</p> 

        <a href=\"#\" class=\"button red close\"><img src=\"popup/images/cross.png\">Close window</a> 
       </div> 
      </div> 


      "; 
     } 
    } 
    ELSE 
    { 
     //echo "<span style=\"color:red\">Database error: Could not create the account. Contact an Administrator!</span>"; 
    } 

JavaScript代码是在标签内,但它仍然不工作。

原来按钮的代码是:

<a href="#" id="button">Click me</a> 

而且我现在使用的一个是:

<input type="submit" id="button" name="submit" value="Create"> 

我不知道是否有什么差别。

+0

哪个'div'可能是因为'if'条件。 –

+1

这两者都不好,但为什么你会回应html,然后通过关闭php标签输出html?你应该坚持一个或另一个 – kennypu

+0

我试图用“回声”过,但didn't工作无论是 – Hampe

回答

0

从你的代码,我假设你想拥有在点击按钮在服务器上创建一个帐户,然后用户不重定向到一个新的页面,而是显示在服务器回复一个模式在同一页面上。

要达到这个目的,您需要使用AJAX

至于为什么模式将不会显示:

  • 确保两个jQuery和reveal.js加载
  • 让你拥有jQuery代码引用正确按钮(或其他元素)和DIV

作为一个侧面说明,就像@kennypu指出的那样,您使用了回显输出和关闭以及打开php标签;你应该坚持一种模式。

+0

奥基。我将代码改回“回声”。但我真的不知道怎么弄的代码中使用AJAX的..:/ – Hampe

+0

尝试阅读[教程](http://net.tutsplus.com/tutorials/javascript-ajax/submit-a-form-without -page-refresh-using-jquery /) –

+0

好吧,我做了,我试了几个其他的指南,但没有成功。我不擅长这一点.. – Hampe