我已经在我的网站上使用了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()发送表单数据,然后在成功后显示消息。