我试着理解一件事。
我想用jquery Ajax POST发布一个对象,如下所示:
var dataPostYear = {
viewType:GetViewType(),
viewDate:'2009/09/08',
languageId:GetLanguageId()
};
$.ajax({
type: "POST",
url: url,
data: dataPostYear,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnLoadYearListSuccess,
error: OnLoadYearListError
});
它不起作用。
但是这个工作正常:
var dataPostYear = "{viewType:'"+ GetViewType() + "',viewDate:'2009/09/08',languageId:'"+GetLanguageId()+"}";
$.ajax({
type: "POST",
url: url,
data: dataPostYear,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnLoadYearListSuccess,
error: OnLoadYearListError
});
GetViewType()返回 - '0' languageId()返回 - '1'
它只是一个字符串
有一种发布对象的方法,这是我第一次尝试做的事情吗?或者不是?
谢谢
答案 0 :(得分:0)
使用jQuery.param()
。这是documentation
答案 1 :(得分:0)
你应该看看.postJSON。
基本上,你只需将json作为第四个参数添加到$ .post
来自网站:
// Send the request
$.post('script.php', data, function(response) {
// Do something with the request
}, 'json');
如果您想要.ajax电话版本,可以使用.post docs进行转换。