jquery Post,数据对象

时间:2011-09-09 01:20:10

标签: 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; 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'

它只是一个字符串

有一种发布对象的方法,这是我第一次尝试做的事情吗?或者不是?

谢谢

2 个答案:

答案 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进行转换。