js代码,该怎样写啊?  
<form action="" method="post">
<table class="data" style="width: 100%;">
    <tr>
  <th colspan="2">概要</th>
</tr>
<% if(list!=null) {

for(int i=0;i<list.size(); i++) {
ConsultBill bill = list.get(i);%>
<tr>
<td colspan="2"><%=bill.getTitle() %></td>
</tr>
<% }
} %>
<tr>
<td>请选择导出内容</td>
<td>
<input name="inp" class="selectBox" type="checkbox"/>咨询单号
<input name="inp" class="selectBox" type="checkbox"/>类型
<input name="inp" class="selectBox" type="checkbox"/>状态
<input name="inp" class="selectBox" type="checkbox"/>创建时间<br>
<input name="inp" class="selectBox" type="checkbox"/>创建者
<input name="inp" class="selectBox" type="checkbox"/>关闭时间
<input name="inp" class="selectBox" type="checkbox"/>问题描述
</td>
</tr>
</table>
<div class="clr"></div>
<br>
<input type="button" name="input" value="导出" onclick="loadOut()"/>
</form>

解决方案 »

  1.   

    checkbox是复选框,你要单选的话使用radio更才合适。
      

  2.   


    function loadOut() {

    var inps = document.getElementsByName("inp");
    var len = inps.length;
    alert(len);
    for(var i=0;i<len;i++) {
    if(inps[i].checked==true) {
    alert("你选中了第[ "+(i+1)+" ]个按钮");
    }

    form.action="<%=basePath %>ThemeDealServlet?showThemeOrTiezi=3&nodeId=<%=nodeId %>";
    form.submit();
    return true;
    }
    }
      

  3.   

      我做的是一个导出报表功能,如果用radio,那样就只能选择一个,只能用checkBox才能选择多个。
      

  4.   

    你写的函数就是这么个逻辑啊,找到第一个选中的复选框后,表单就提交了。但这些复选框的name值是相同的,如果有多个复选框被选中,后面的值会覆盖前面的值,用一个数组名作为name值才能提交所有的复选框的值,当然,你还要给不同的复选框设置不同的value值,不然提交上去也是空值,像这样:
    <input name="inp[]" class="selectBox" type="checkbox" value="1" />咨询单号
    <input name="inp[]" class="selectBox" type="checkbox" value="2" />类型
    <input name="inp[]" class="selectBox" type="checkbox" value="3" />状态
    <input name="inp[]" class="selectBox" type="checkbox" value="4" />创建时间<br>
    <input name="inp[]" class="selectBox" type="checkbox" value="5" />创建者
    <input name="inp[]" class="selectBox" type="checkbox" value="6" />关闭时间
    <input name="inp[]" class="selectBox" type="checkbox" value="7" />问题描述
      

  5.   


     恩, 就是覆盖了。  你说的<input name="inp[]" class="selectBox" type="checkbox" value="7" /> , 里面的name="inp[]", 这怎么用啊, 用js。
      

  6.   

    var inps = document.getElementsByName("inp[]");
      

  7.   


      这样,跟document.getElementByName("inp"); 好像没有区别吧?
      

  8.   


    这样,跟我写的var inps = document.getElementsByName("inp"); 好像没有区别吧? 
      

  9.   


    是没区别,因为循环中第一次找到选中的复选框时,表单就被提交了。这个loadOut()函数的想要实现的功能是什么?
      

  10.   

        
       想要实现的是, 数据导出到报表excel;
           导出从数据库里查询出来的列表已实现, 但是,要求是, 要可以选择性的导出,想要的字段、属性。   我想通过,checkBox选中后,传到后台servlet,然后做判断,选中就导出,没选中的就不到出,。   就是这样一个功能。、
        
      

  11.   

       我现在最主要的就是在js代码中,把多个checkbox遍历出来,然后把他们区分开,传到后台。
      

  12.   

    这个与js无关了。选中的复选框提交后后台都能拿到。判断也在后台进行。你去搜索下servlet 怎么获取表单数组把。