2013-03-22 136 views
0

以下jQuery驗證效果很好,但是在AJAX調用中出現錯誤,因爲它返回失敗。此處全部代碼http://jsfiddle.net/YJwsZ/6/使用AJAX進行驗證

我對AJAX也很新穎。

我想下面的返回成功:

// AJAX call 
$.ajax({ 
    url:url_site, 
    data : data, 
    // dataType: 'json', 
    type: 'post', 
    success: function(r){ 
     if (r.success) { 
      alert('success'); 
     } 
     else { 
      alert('unsuccessful'); 
     } 
    } 
}); 
+0

嘗試添加textStatus你的函數(R,textStatus),然後通知其 – KyelJmD 2013-03-22 13:05:14

回答

0

這可能是不成功的,因爲url_site沒有設置正確。重新檢查您嘗試連接的文件的路徑。如果您無法獲得適合您的相對位置,請使用絕對路徑。

+0

從給定的...'VAR url_site = location.href'的例子 - 它提交到自身。 – Archer 2013-03-22 13:09:45

+0

你爲什麼要使用ajax來加載你在同一頁面? – blackhawk 2013-03-22 13:10:33

+0

最終此表單將成爲更大頁面的一部分,因此我需要通過發送成功或失敗的消息來刷新它... – Alex 2013-03-22 13:21:13

1

嘗試重建您的ajax調用並將成功回調添加爲鏈接函數。你也可能想創建一個實際回答你的測試用例的小腳本。見the docs

http://jsfiddle.net/VyFng/1/

$.ajax({ 
    url: url_site, 
    data: data, 
    // dataType: 'json', 
    type: 'post', 
}).done(function(data, textStatus, jqXHR) { 
    alert(textStatus); 
}) 
.fail(function(jqXHR, textStatus, errorThrown) { 
    alert(textStatus); 
}) 
.always(function(dataOrJqXHR, textStatus, jqXHRorErrorThrown) { 
    alert('callback after ' + textStatus + ' callback has been completed'); 
}); 
+0

當我嘗試本地時,即使所有字段都爲空,單擊提交時它會返回成功... – Alex 2013-03-22 15:21:21