2014-07-16 3 views
1

Я делаю запрос AJAX, используя следующий код:петрушка JS удаленного возвращения XML, а не JSON в 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 строкой, которая уже не обрабатывается Петрушкой за сценой? –

+0

RIght. Просто отправьте данные, не строгая их. – drumenas

+0

Теперь я получаю этот ответ: «Сообщение»: «Недействительный примитив JSON: электронная почта.», «StackTrace»: «... и т. Д. –

Смежные вопросы