2014-01-14 5 views
0
var objectData ={ 
      "emailAdress" : document.getElementById('emailAddress').value , 
       "password":  document.getElementById('password').value } 

var objectDataString = JSON.stringify(objectData); 
alert(objectDataString); 


    var url = "url"; 
var xmlhttp = new XMLHttpRequest(); 
xmlhttp.onreadystatechange=function() 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
    alert('connected..'); 
    } 
    }; 
xmlhttp.open("POST",url,true); 
xmlhttp.send(objectDataString); 

     $.ajax({ 

      type: "POST", 
      URL:"login.php", 
      contentType:"application/json", 
      CrossDomain:true, 
      data: JSON.stringify(objectData),  
      dataType: 'json', 
      success: function (data) { 

       alert("success"); 
       var ret = jQuery.parseJSON(data); 
       alert(ret); 

Я войти в форму, которая содержит идентификатор пользователя и password.i должны преобразовать, что пользователь ввел данные в JSON и отправить его в server.but получать JSON разобранной Ошибка .unable, чтобы найти error.please скажите мне, где я делаю неправильно.? im пытается из-за так много часов, но не может найти.просил JSON разбора не удалось, произошла ошибка синтаксического разбора документа JSon

+0

Невозможно сказать, что не так, вы ** не показали, что вы пытаетесь разобрать **. Покажите, что содержит 'data', когда вы пытаетесь его проанализировать. –

+0

Почему вы используете XHR напрямую, * и * используя jQuery 'ajax'? Это отправит запрос дважды. –

+0

Обратите внимание, что 'ajax' не имеет опции« CrossDomain ». JavaScript чувствителен к регистру. Существует опция «crossDomain». –

ответ

1

Игнорирование кода XHR, и просто глядя на ajax вызова:

  1. Там нет CrossDomain варианта. Однако есть опция crossDomain. (JavaScript чувствителен к регистру.) Вероятно, вы не хотите, чтобы этот параметр отображался вместе с URL-адресом, который вы указываете.

  2. Вы сообщаете jQuery, что возвращаемые данные JSON. Это означает, что jQuery проанализирует его для вас, прежде чем дать аргумент data вашей функции успеха. Вам не нужно (или не хотеть) называть JSON.parse на нем, это уже сделано для вас. data будут проанализированы данные.

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