编辑也许这是更好的解释(对不起,我比英语更了解javascript......而且我不太了解javascript :-)
我需要通过我的servlet 在java bean 中映射一个用jquery $.ajax 发送的复杂javascript 对象。
这是一个使用 jQuery 完成并使用 Firebug 嗅探的真实示例。这是js代码:
$("#test").click(function(){
$.ajax({
url: "/server",
data: { "data1": [{key:1, val:2},{key:3, val:4}] },
type: "post",
}
});
});
正如你所看到的,我在 $.ajax 数据中发送了一个复杂的对象,而不是一个简单的地图。如果我检查如何使用 firebug 嗅探器发送 http 请求,我会得到这个 POST 参数:
Parameters application/x-www-form-urlencoded
data1[0][key] 1
data1[0][val] 2
data1[1][key] 3
data1[1][val] 4
这就是 jquery 将复杂对象转换为简单映射的方式。我想在 java bean 中获取这个对象。谢谢。
EDIT2 这:Java 将 JSONObject 转换为 URL 参数似乎与我的需求完全相反。但它没有答案...