我已经在我的网站上使用了colorbox,因此希望在用户提交表单后,使用inlineHTML colorbox向用户显示感谢信息。

我已经将包含感谢文本的内联内容contact_thanks设置为隐藏的div。

然后,我将PHP脚本设置为重新路由到我的域+ #contact_thanks

唯一的问题是,我缺少一些调用jQuery来将colorbox div从隐藏更改的部分,并且我不确定为实现此目的需要在代码中添加什么。

可以找到实时站点here,随时发送测试消息(仅在mo才发给我!)

的PHP

<?php
  $name = $_REQUEST['name'] ;
  $email = $_REQUEST['email'] ;
  $message = $_REQUEST['message'] ;

  mail( "myemail@gmail.com", "Message",
    $message, "From: $email" );
  header( "Location: http://www.mysite.co.uk/james/index.php#contact_thanks" );
?>


HTML

<div style='display:none'>
      <div id='contact_thanks' style='padding:10px; background:#fff;'>
      <span class="colorBox">Thank you for your message!</span>
      <p>Thanks!</p>
</div>
</div>

最佳答案

将此添加到您的.js文件中(假设您已加载jQuery):

$(window).load(function() {
    if( window.location.hash == '#contact_thanks' ) {
      $('#contact_thanks').show();
    }
});


但您还需要编辑html:

<div id='contact_thanks' style='padding:10px; background:#fff; display:none'>
    <span class="colorBox">Thank you for your message!</span>
    <p>Thanks!</p>
</div>


实际上,最好将所有样式移到您的CSS并应用于#contact_thanks。还有更好的选择,但是实现起来会有点困难-通过.ajax()发送表单数据,然后在成功后显示消息。

08-04 09:08
查看更多