jquery.ajax post ,老提示语法错误,无效字符串
var str1="{Name:'张三',Sex:'男',Birthday:'1999-09-09',Married:'已婚'}" ;
// userobj=JSON.parse(str1); --这一行 运行不了 已引用了json2.js
jQuery.ajax({
type: "POST",
contentType: "application/json;utf-8",
url: "hrStaffReg.do",
data: str1, //---->这个位置老提示出现语法错误
dataType: "json",
success: function(data) {
alert("ok");
},
error: function(xhr,txtStatus,errThrow) {
alert("error:\n " + errThrow);
}
});
[解决办法]
查API。。。
[解决办法]
data: str1, //---->这个位置老提示出现语法错误
data这里提交的数据有2种方法,
var str1="{Name:'张三',Sex:'男',Birthday:'1999-09-09',Married:'已婚'}" ;
1: data:"name=张三&sex=男&birthday=1999-09-09&Married=已婚";
2: data:{Name:'张三',Sex:'男',Birthday:'1999-09-09',Married:'已婚'};
你自己试一下.
[解决办法]
data是你传入的参数。。
data:{key:value},
[解决办法]
data: {"user":user, "pass":pwd},
[解决办法]
data格式写错了,不是字符串,是json对象
[解决办法]
json格式,比如:
$.post("test.php", { name: "John", time: "2pm" } );
直接可以用大括号包起来
[解决办法]
jQuery.ajax({
type: "POST",
contentType: "application/json;utf-8",
url: "hrStaffReg.do",
data: {'Name':'张三','Sex':'男','Birthday':'1999-09-09','Married':'已婚'}, //---->这个位置老提示出现语法错误
dataType: "json",
success: function(data) {
alert("ok");
},
error: function(xhr,txtStatus,errThrow) {
alert("error:\n " + errThrow);
}
});
[解决办法]
json对象里面的键和值加上引号
[解决办法]
对头.
[解决办法]
contentType: "application/json;utf-8"
改成
contentType: "application/x-www-form-urlencoded; charset=UTF-8"
[解决办法]
类似这样就行了, contentType省了
$.ajax({
url:contextPath + "json/deleteDxgcInfo.do",
data:{xmid:xmid,upFlag:Math.round(Math.random()*10000)},
dataType:'json',
success:function(data){
var o=data.formDomain;
if (o.status=='1'
[解决办法]
o.status==1){
speciRefreshGrid("_div_load","edit".val(),e);
}else{
alert(o.errorMsg);
return;
}
},error:function(e){
alert('服务端报错!'+e.message);
}
});
[解决办法]
把contentType去掉或改过来之后再把
var str1="{Name:'张三',Sex:'男',Birthday:'1999-09-09',Married:'已婚'}" ;
你这样定义它只是个字符串不是对象,最外面的""去掉
var str1={Name:'张三',Sex:'男',Birthday:'1999-09-09',Married:'已婚'};
这才是对象