SpringMVC数据绑定三(数组)

来源:互联网 发布:java中class的作用 编辑:程序博客网 时间:2024/05/28 19:23

这里数组主要以Integer和String为例
1、不使用ajax提交的数组(使用name属性)
前端jsp代码:

   <br>   <label>数组</label>   <form action="arrayto.do" method="post">      <label>array1</label> <input type="text" id="array1" name="ss">      <label>array1</label> <input type="text" id="array1" name="ss">      <label>array1</label> <input type="text" id="array1" name="ss">      <label>array1</label> <input type="text" id="array1" name="ss">      <input type="submit"   >   </form>   <br>

后台Controller代码:

  @RequestMapping(value="arrayto.do")  @ResponseBody  public String arrayto( Integer ss[]){      for(Integer s :ss)          System.out.println(s);      return "y";  }

这里同样是使用文本标签属性name来作为数据绑定的依据,根据jsp页面中name值(”ss”)与后台一样数组名就完成数据绑定。使用这种方法最简单实现数据绑定。
2、使用ajax提交数组
前端jsp页面代码:

   <label>ajax数组</label>      <label>array1</label> <input type="text" id="a1" name="ss">      <label>array1</label> <input type="text" id="a2" name="ss">      <label>array1</label> <input type="text" id="a3" name="ss">      <label>array1</label> <input type="text" id="a4" name="ss">      <input   type="button" onclick="subArray()" value="提交" >   <br>

js文件代码:

function subArray(){    var array=[];    var sh;    sh=$("input[name='ssajax']");    for(var i=0;i<sh.length;i++){        array.push(sh[i].value)        console.log("第"+i+" :"+array[i]);    }    array.push($("#a1").val());    array.push($("#a2").val());    array.push($("#a3").val());    array.push($("#a4").val());    $.ajax({        url:'array.do',        type:'get',        data:{ss:array},        success:function(){            alert("success");        },        error:function(){            alert("error");        }    });

后台controller代码:

  @RequestMapping(value="array.do")  @ResponseBody  public String array(@RequestParam(value = "ss[]") String ss[]){      for(String s :ss)          System.out.println(s);      return "y";  }

这里需要指出的是使用ajax传输的时候,使用json格式传输,需要在后台指定绑定参数这里使用@RequestParam(value=”ss[]”)来指明接收的数组参数名。还有一点就是js代码中的ajax数据部分是{ss:array},使用json格式传输;并指定后来key值ss。到这里就可以方便传递数组。

原创粉丝点击