2015-12-21 53 views
0

我有一個請求表單。之前正在工作,但今天它停止正常工作。我提交表單時發生了什麼,如果表單有任何錯誤,它會顯示在屏幕上和網絡上。但是當提交表單沒有任何錯誤時,屏幕或網絡上不會顯示成功消息。在console.log中也嘗試過,結果爲null。ajax錯誤出現在失敗,但不成功

$(document).ready(function (e) { 
$("#contactForm1").on('submit',(function(e) { 
    e.preventDefault(); 
    $('p.error').empty(); 
    $('#loader').show(); 
    $.ajax({ 
     url: siteurl, 
     type: "POST", 
     data: new FormData(this), 
     contentType: false,  
     cache: false, 
     processData:false, 
     dataType:"json", 
     success: function(data){ 
      if(data.error){ 
       $('#loader').hide(); 
       $("p.error").empty(); 
       $('p.error').css('display','block'); 
       $("p.error").append(data.msg); 
      }else { 
       $('#loader').hide(); 
       $("p.error").empty(); 
       $('p.error').css('display','block'); 
       $("p.error").append(data.msg); 
       window.setTimeout(function(){location.reload()},3000) 
      } 
     } 
    }); 
})); 

代碼在Ajax請求的URL

$bussines_name=$_POST['bussiness_name']; 
$email= trim(sanitize_text_field($_POST['emailaddress'])); 
$url=trim(sanitize_text_field($_POST['websiteaddress'])); 
$address=trim(sanitize_text_field($_POST['address'])); 

if(empty($bussines_name)) 
    { 
     echo json_encode(array(
      'error' => true, 
      'msg' => 'Please enter your Business Name' 
     )); 
     exit; 
    }elseif(empty ($url)){ 
     echo json_encode(array(
      'error' => true, 
      'msg' => 'Please enter your Unique Booking Code' 
     )); 
     exit; 
    }elseif (empty ($email)) { 
     echo json_encode(array(
      'error' => true, 
      'msg' => 'Please enter your email address' 
     )); 
     exit; 
    }elseif(empty($address)){ 
     echo json_encode(array(
      'error' => true, 
      'msg' => 'Please enter your address' 
     )); 
     exit; 
    } else { echo json_encode(array(
        'error' => false, 
        'msg' => 'Form submit successfully.' // **this msg is showing before but not now.** 
        )); 

} 

任何幫助將apprecited。

+0

你檢查在控制檯的要求,看看什麼是真正發生的狀態? –

+0

是的,我也檢查了控制檯日誌,但結果爲空。在網絡上,狀態碼是綠色和200。 –

回答

0

//you have syntax error which i found I have corrected your code. The error was in line no 4 beform function you was using "(" and at last "}" was missing. 
 

 
$(document).ready(function (e) { 
 
$("#contactForm1").on('submit',function(e) { 
 
    e.preventDefault(); 
 
    $('p.error').empty(); 
 
    $('#loader').show(); 
 
\t var siteurl = $(this).attr('action'); 
 
\t \t $.ajax({ 
 
\t \t \t url: siteurl, 
 
\t \t \t type: "POST", 
 
\t \t \t data: new FormData(this), 
 
\t \t \t contentType: false,  
 
\t \t \t cache: false, 
 
\t \t \t processData:false, 
 
\t \t \t dataType:"json", 
 
\t \t \t success: function(data){ 
 
\t \t \t \t if(data.error){ 
 
        $('#loader').hide(); 
 
        $("p.error").empty(); 
 
        $('p.error').css('display','block'); 
 
        $("p.error").append(data.msg); 
 
\t \t \t \t }else { 
 
\t \t \t \t \t $('#loader').hide(); 
 
\t \t \t \t \t $("p.error").empty(); 
 
\t \t \t \t \t $('p.error').css('display','block'); 
 
\t \t \t \t \t $("p.error").append(data.msg); 
 
\t \t \t \t \t window.setTimeout(function(){location.reload()},3000) 
 
\t \t \t \t } 
 
\t \t \t } 
 
\t }); 
 
\t }); 
 
});