jQuery传递数组作参数给Java服务端,终于解决

问题来源:
其实就是想把一批同名的input值组成一个数组,传给服务端。

解决方法:
客户端:
        var monthIncome = $.map($("input[name='monthIncome']"),function(obj){
            return $(obj).val();
        });
        $.post("/update-month-income.jspx",
            {year:2008,monthIncome:monthIncome},
            function(){
                //refresh after input data is saved.
            });
Java服务端:
request.getParameter("year");
request.getParameterValues("monthIncome");

问题在于:
jQuery的例子里给的是这样的
$.post("test.php", { 'choices[]': ["Jon", "Susan"] });
按这个例子做,在Java里用request.getParameterValues("monthIncome");取不到值,
要这样才行request.getParameterValues("monthIncome[]");
但是不用jQuery,用form提交的时候,以前一直是用request.getParameterValues("monthIncome");
所以搞糊涂了。
不知PHP里面是不是要写成monthIncome[]

测试环境:jQuery1.2.6
标签: jQuery
评论: 3 | 引用: 0 | 阅读: 456
  • 1 
savasun [ 2008-10-28 20:19 | 回复 | 编辑 删除 ]
不错,感谢互联网少数存在博主这几个好人,你博客一直在我收藏夹,每次都看看,现在终于忍不住想回复消息了。
王者之剑 [ 回复于2008-10-29 20:16 网址 | 编辑 删除 ]
谢谢,夸奖得过头了:)
呵呵 [ 2008-12-11 06:19 | 回复 | 编辑 删除 ]
给你发个更好的,你上面的无论值是多少都传递,下面是只传递CHECKED
             var move_ids="";
             $("[name='is_move'][checked]").each(function(){
                move_ids+=$(this).val()+"-";
             })
  • 1 
发表评论
昵 称: (必须)
密 码: (未注册用户可不填)
网 址: 邮 箱:
验证码: 验证码图片 选 项:
头 像:
内 容: