到目前为止,我只是将javascript字符串传递给我的Web方法,这些方法通常被解析为Guids.但现在我有一个接受IList ...的方法在客户端上,我构建这个对象数组,然后尝试传递它,如:
$.ajax({ type: 'POST', url: 'personalization.aspx/SetPersonalization', data: "{'backerEntries':" + backerEntries + "}", contentType: 'application/json; charset=utf-8', dataType: 'json', success: postcardManager.SetPersonalizationComplete });
帖子:
{'backerEntries':[object Object],[object Object],[object Object]}
错误响应:
Invalid JSON primitive: object.
出于某种原因,jquery似乎没有将我的数组转换为json字符串?有什么想法吗?我试着在backerEntries和{}周围放置[],以及{[]}只是在绝望中.我错过了一些明显的东西吗?
数据:"{'backerEntries':"+ backerEntries +"}",
..是相同的
data: "{'backerEntries':" + backerEntries.toString() + "}",
......这几乎没用.如果您只想在查询字符串中传递名称为"backerEntries"的编码值列表,请使用Duncan的建议.如果要对数据进行JSON编码,则获取JSON库并调用JSON.stringify()
.