通过JQuery ajax提交带有密钥的数组

时间:2010-12-09 18:18:09

标签: javascript jquery ajax tomcat servlets

我通过jquery ajax提交一个值数组,但是当我的servlet有更多元素时,我的servlet只会获取数组中的第一个值。

$.ajax({
      type: "POST",
      url: "myServlet",
      data: ({'item':itemsArr})     
});

数组看起来像:var lovelyArray = ["cake", "thong", "supermanDoll"];

出现在另一边,如:&item=cake ..就是这样。

我希望它像item=cake&item=thong&item=supermanDoll

一样出现

任何帮助都非常感谢。

感谢。

2 个答案:

答案 0 :(得分:2)

您可以使用$.param序列化数组,如下所示:

$.ajax({
      type: "POST",
      url: "myServlet",
      data: $.param({'item': itemsArr})  // item[]=cake&item[]=thong&item[]=supermanDoll
});

以上输出假定您使用的是jQuery 1.4+。如果您使用的是jQuery 1.3.2或更早版本,输出将如下所示:

item=cake&item=thong&item=supermanDoll

答案 1 :(得分:0)

您希望此语法取自http://api.jquery.com/jQuery.post/

$.post("test.php", { 'choices[]': ["Jon", "Susan"] });