要求JSON解析失败,出现错误解析JSON文件
问题描述:
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错误。无法找到错误。请告诉我在哪里做错了..?我试图从这么多小时,但无法找到。要求JSON解析失败,出现错误解析JSON文件
答
忽略XHR代码,只是看ajax
电话:
有没有
CrossDomain
选项。虽然有一个crossDomain
选项。 (JavaScript区分大小写。)尽管如此,您可能完全不希望使用该选项。你告诉jQuery返回的数据是JSON。这意味着jQuery会在给你
data
参数给你的成功函数之前解析它。您不需要(或者不想)就可以拨打JSON.parse
,这已经为您完成了。data
将被解析数据。
不可能说出了什么问题,你**没有显示你想要解析的**。显示数据包含的内容,当你试图解析它时。 –
为什么直接使用XHR,*和*使用jQuery的'ajax'?这将发送两次请求。 –
并注意''ajax'没有'CrossDomain'选项。 JavaScript区分大小写。有一个'crossDomain'选项。 –