那么这里是故事:
我有一些数据需要发送到服务器,但他们应该首先变成JSON数据类型。
我做了这样一个电话:
$.ajax({
url: url,// the url I want to post to.
type: 'POST',contenttype:'application/json; charset=utf-8',beforeSend: //some HTTP basic auth stuff
data: {
name:'test',key:'foo',key2:'bar'
},dataType:'JSON'
});
基本上我期待我发送到服务器的数据是:
[name:test,key:foo,key2:bar]
但我所得到的是:
name=test&key=foo&key2=bar
我失踪了什么如何将这些数据转换成JSON?
解决方法
var data = {'bob':'foo','paul':'dog'};
$.ajax({
url: url,type: 'POST',contentType:'application/json',data: JSON.stringify(data),dataType:'json'
});
/** 添加 **/
如果您需要执行某些操作,则服务器的响应无法执行任何操作,当服务器作出响应时,将调用回调函数。
var data = {'bob':'foo',dataType:'json',success: function(data){
//On ajax success do this
alert(data);
},error: function(xhr,ajaxOptions,thrownError) {
//On error do this
if (xhr.status == 200) {
alert(ajaxOptions);
}
else {
alert(xhr.status);
alert(thrownError);
}
}
});