java中的复选框索引值

时间:2015-03-31 05:50:17

标签: java spring

我在spring mvc工作,我使用以下行从DB表生成复选框。

<td><input type="checkbox" name="loanId" value="${loan.id}" class="it"></td>

我需要在我的java控制器中获取此选定值的索引。我能够获取所选的值,但如何获取索引值? enter image description here 以下代码是我正在使用

        String[] loanIds = request.getParameterValues("loanId");

        for (String string : loanIds) {
            System.out.println("loanIds****"+string);
        }           

3 个答案:

答案 0 :(得分:1)

你需要javascript来获取复选框的索引并将其设置为隐藏字段:

var ids = document.getElementsByName('loanId');
var ind = document.getElementById('loanIndex');
var put = function() {
  var arr = [];
  var i = -1;
  while (ids[++i])
    if (ids[i].checked) arr.push(i);
  ind.value = arr.join(',');
  alert('selected index: ' + ind.value);
};
var i = -1;
while (ids[++i])
  ids[i].onchange = put;
<input type="checkbox" name="loanId" />
<input type="checkbox" name="loanId" />
<input type="checkbox" name="loanId" />
<input type="checkbox" name="loanId" />
<input type="hidden" name="loanIndex" id="loanIndex" value="" />

在控制器中:

String[] loanIndex= request.getParameter("loanIndex").split(",");

答案 1 :(得分:0)

没有直接用于此目的的方法。

您可以将索引作为选择复选框时传递的值。您可以稍后使用此索引值从内存中收集选定的记录数据,即当用户选择复选框并提交请求时,在服务器端,您将从请求中获取ParameterValues并从数据源中列出数据,比较ID然后派生所选列表。 / p>

答案 2 :(得分:0)

使用Jquery

var indexString;

var index;

$('#.it').each(function () {



    $(this).find('.SomeCheckboxClass').each(function () {
        if ($(this).attr('checked')) {
            index = $(this).index();
            indexString = index + ",";
        }
    });

    });

发布此indexString,它是逗号分隔的索引字符串。