Javascript 带有post函数的PHP联系人表单不起作用

Javascript 带有post函数的PHP联系人表单不起作用,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,这是我的javascirpt代码 var form = $('#main-contact-form'); form.submit(function(event){ event.preventDefault(); var form_status = $('<div class="form_status"></div>'); $.ajax({ url: $(this).attr('action'), beforeSend

这是我的javascirpt代码

var form = $('#main-contact-form');
form.submit(function(event){
    event.preventDefault();
    var form_status = $('<div class="form_status"></div>');
    $.ajax({
        url: $(this).attr('action'),
        beforeSend: function(){
            form.prepend( form_status.html('<p><i class="fa fa-spinner fa-spin"></i> Email is sending...</p>').fadeIn() );
        }
    }).done(function(data){
        form_status.html('<p class="text-success">Thank you for contact us. As early as possible  we will contact you</p>').delay(6000).fadeOut();
    });
});
var form=$(“#主联系人表单”);
表单提交(功能(事件){
event.preventDefault();
变量形式_状态=$('');
$.ajax({
url:$(this.attr('action'),
beforeSend:function(){
form.prepend(form_status.html(“电子邮件正在发送…

”).fadeIn(); } }).完成(功能(数据){ form_status.html('

感谢您与我们联系。我们将尽快与您联系。

')。延迟(6000)。淡出(); }); });

我没有获取字段值,post函数无法获取它

请尝试将方法设置为“post”,并将数据设置为$.ajax,如下所示:

$.ajax({
    method: "POST",
    data: form.serialize(),
    etc...
此外,查看您的PHP文件也会有所帮助。


<div class="contact-form wow fadeIn" data-wow-duration="1000ms" data-wow-delay="600ms">
      <div class="row">
        <div class="col-sm-6">
          <form id="main-contact-form" name="contact-form" method="post" action="sendemail.php">
            <div class="row  wow fadeInUp" data-wow-duration="1000ms" data-wow-delay="300ms">
              <div class="col-sm-6">
                <div class="form-group">
                  <input type="text" id="name" name="name" class="form-control" placeholder="Name" required="required">
                </div>
              </div>
              <div class="col-sm-6">
                <div class="form-group">
                  <input type="email" id="email" name="email" class="form-control" placeholder="Email Address" required="required">
                </div>
              </div>
            </div>
            <div class="form-group">
              <input type="text" id="subject" name="subject" class="form-control" placeholder="Subject" required="required">
            </div>
            <div class="form-group">
              <textarea name="message" id="message" class="form-control" rows="4" placeholder="Enter your message" required="required"></textarea>
            </div>                        
            <div class="form-group">
              <button type="submit" class="btn-submit">Send Now</button>
            </div>
          </form>   
        </div>
立即发送

这是我的html代码

看起来你只是在发送一个空的ajax请求。 您需要一个方法和表单数据来发送,例如:

$.ajax({
    url: $(this).attr('action'),
    type: 'post',
    dataType: 'json', // <-- not sure if about this
    data: form.serialize(),
beforeSend: function(){
    ...
$.ajax({
url:$(this.attr('action'),
键入:“post”,

数据类型:'json',//它不起作用我试过了,但我得到的邮件没有字段values@VasuSengunthar你能给我们看看你的PHP文件和表单吗?打开上面的链接你会得到我所有的html,PHP,javascript代码还有一封空邮件有人能帮我吗