2014-07-16 60 views
1

遠程返回XML而不是JSON我使用以下代碼製備AJAX請求:香菜JS在AJAX

$('#useremail').parsley().addAsyncValidator(
    'validateUsername', function (xhr) { 
    return 200 === xhr.status; 
    return 404 === xhr.status; 
    }, '/CheckEmailAvailability', 
     { "type": "POST", "dataType": "json", "contentType": "application/json; charset=utf-8" } 
); 

<input id="useremail" type="text" data-parsley-trigger="focusout" data-parsley-required-message="Vänligen ange en giltig e-postadress" data-parsley-remote-validator="validateUsername" name="Email" required /> 

似乎所有我發送是一個字符串作爲每控制檯:

而我得到以下回應:

<?xml version="1.0" encoding="utf-8"?> 
<string xmlns="http://www.domain/Central/Login/">{"availaibility":"EMAIL_ALREADY_EXIST"}</string> 

如何發送適當的Json並獲得JSON格式的響應?

任何幫助將不勝感激。

FYI我用香菜v 2.02

+0

修改了JS,現在我有:{「type」:「POST」,「dataType」:「json」,「contentType」:「application/json; charset = utf-8」,「data」:'{「email」:''+ field +' 「}'} –

+0

迴應沒問題。但我的領域仍然空虛「」。 var field = $(「#useremail」)。val(); –

回答

1

一些數據發送到服務器:

data: JSON.stringify({key:value, key2:value2}), 

,並添加正確的內容類型:

contentType: 'application/json; charset=utf-8' 
+0

是JSON stringify在場景後面還沒有被Parsley處理? –

+0

正確。只需發送數據而不會造成損壞。 – drumenas

+0

我現在得到這個迴應:「消息」:「無效的JSON基元:電子郵件。」,「StackTrace」:「...等 –