Javascript jquerypost,数据对象
我试图理解一件事 我想用jquery Ajax post发布一个对象,如下所示:Javascript jquerypost,数据对象,javascript,jquery,object,post,Javascript,Jquery,Object,Post,我试图理解一件事 我想用jquery Ajax post发布一个对象,如下所示: var dataPostYear = { viewType:GetViewType(), viewDate:'2009/09/08', languageId:GetLanguageId() }; $.ajax({ type: "POST", url: url, data: dataPostYear, contentType: "application/json;
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'
这只是一根绳子
有一种方法可以发布一个对象,我第一次尝试做什么?还是不
谢谢使用jQuery.param。这是你应该看的
本质上,您只需将json作为第四个参数添加到$.post
从网站:
// Send the request
$.post('script.php', data, function(response) {
// Do something with the request
}, 'json');
如果您想要.ajax调用版本,可以使用来转换它。什么意思,它不工作?第一个版本可以正常工作,这就是数据参数的工作方式。错误是客户端还是服务器端?如何解码服务器端的数据?我假设第二种方法有效,因为它只是一个字符串。对于不匹配的单引号,没有双引号参数,它是非常无效的。第一个应该可以。你能发布GetViewType和GetLangaugeId方法吗?还有一些事情你没有告诉我们。这段代码应该正是您想要的:jQuery.param:创建数组或对象的序列化表示,适合在URL查询字符串或Ajax请求中使用。