我有这个PHP联系表单脚本(如下所示),我之前使用过,所以我知道有效,但是,由于我已经隐藏了新的jQuery驱动的div中的html表单:(
<?php $to = 'example@gmail.com'; $subject = 'Company Name'; $name = $_POST['name']; $email = $_POST['email']; $message = $_POST['message']; $body = <<<EMAIL Hello my name is $name. $message From $name my email address is $email EMAIL; if($name == '' || $email == '' || $message == "") { echo "Sorry, I think you missed bit...."; $error = true; } else { $error = false; mail("example@gmail.com", $name, $email, $message); echo "Thank you for getting in touch. I'll get back to you ASAP."; } if($error == true): ?>
这是HTML:
Email us here $(document).ready(function() { $(".submit_button").live("click", function() { $("#load_area").fadeOut('slow', function() { $("#load_area").fadeIn(); $.post("process.php", $("#my-form").serialize(), function(data) { $("#load_area").html(data); }) }); }) })
尝试使用
$(".submit_button").on("click", function(){
而不是'$(".submit_button").live("click", function(){
'$(".submit_button").live("click", function(){
来自jQuery Docs:
从jQuery 1.7开始,不推荐使用.live()方法
也尝试使用
$('#my-form').submit(function() { alert('Handler for .submit() called.'); return false; });
并在你的html表单中设置一个动作,如下所示: