Javascript 在联系人窗体上加载隐藏Div

Javascript 在联系人窗体上加载隐藏Div,javascript,php,jquery,css,Javascript,Php,Jquery,Css,我不确定我是否使用了正确的方法来喜欢这个联系人表单上隐藏的div。我想在点击提交按钮时加载隐藏的div。有人能指出我到底做错了什么吗 注册 $(“#提交”)。单击(函数(){ $(“#谢谢”).css({ “显示”:“块” }); }); 剃刀时尚:班级注册 你好 姓名:* 电邮:* 主题:* 信息:* 发送电子邮件 注:*字段为必填字段 提交函数需要进行AJAX调用,如果成功,它应该显示隐藏的div。此外,为了防止表单提交,提交函数必须返回false 请参见如何使用jQuery进行AJAX调

我不确定我是否使用了正确的方法来喜欢这个联系人表单上隐藏的div。我想在点击提交按钮时加载隐藏的div。有人能指出我到底做错了什么吗


注册
$(“#提交”)。单击(函数(){
$(“#谢谢”).css({
“显示”:“块”
});
});
剃刀时尚:班级注册
你好
姓名:*
电邮:*
主题:*
信息:*
发送电子邮件
注:*字段为必填字段


提交函数需要进行AJAX调用,如果成功,它应该显示隐藏的div。此外,为了防止表单提交,提交函数必须返回false

请参见如何使用jQuery进行AJAX调用:

因此,您需要修复的是:

  • 如果尚未将文件拆分为两个文件:常规文件和将调用AJAX的文件
  • 从submit函数进行AJAX调用(这里还可以进行一些基本的客户端验证)
  • 如果AJAX返回成功,则显示div:
    $(“#谢谢”).fadeIn()例如
  • 若要阻止表单提交,提交函数必须返回false
更新

您没有包含script.js文件,这非常重要,因为它处理验证和AJAX调用。在这种情况下,您必须对该文件进行修改,因为不需要同时使用表单提交和提交按钮单击侦听器。您需要将使用AJAX调用的PHP代码分离到不同的文件中,并确保使用AJAX调用该文件。检查调用是否成功以及响应(您可以从中回显类似“ok”的内容),并显示相应的消息/显示div.

您可以使用
.show()

$('#thankyou').show();
更新

您需要将jquery代码包装在一个ready块中,如

$(document).ready(function() {
    $('#submit').click(function() {
        $('#thankyou').show();
    });
});
基本上,您试图引用
标题中尚未加载的DIV。加载div后,使用
ready
代码附加click事件

更改此行:

<div id="thankyou" style="display:none;">

致:


移除上述处理器

<div id="thankyou" style="display:none;"></div>

将上述行替换为以下代码
if(isset($_POST['submit'])){
?>

<div id="thankyou" style="display:block;">
<?php
}else{
?>
<div id="thankyou" style="display:none;">



<?php
    }

    ?>
if(isset($\u POST['submit'])){
?>

值得一提的是,该页面上包含的
脚本已经在处理表单验证和ajax。@jwatts1980啊,我没有检查网站,只是问题中的代码,谢谢。您可能会想重写单击“提交”按钮后发生的大部分事情,因为您既不使用常规的submit flow和AJAX驱动的flow都不是,而是介于两者之间。OP真正想要做什么?使用此代码,
单击
处理程序提交表单,然后不显示
谢谢
div
。它不是一个
提交
按钮。它是一个将
名称
id
属性设置为“提交”。JS在页面上包括处理表单的javascript验证和Ajax提交。单击按钮后,页面不会重新加载。JS会默默地发布值,然后他希望显示“谢谢”div。
$('#submit').click(function() {
$('#thankyou').css({
  'display': 'block'
});
});
<div id="thankyou" style="display:none;"></div>
if(isset($_POST['submit'])){
?>

<div id="thankyou" style="display:block;">
<?php
}else{
?>
<div id="thankyou" style="display:none;">



<?php
    }

    ?>