asp页面中通过checkbox的形式,为管理员提供分配用户权限的功能,
(所有的checkbox的name属性设置为a)
管理员通过勾选相应的checkbox以后,点击提交按钮,页面被submit到下一个asp页面。
在这个页面中对每个checkbox是否选中进行判断,并且入库
(每个checkbox在数据库中对应着一个属性)
为了试验从网上找到众多代码,其中有一段如下:
<%
a=Request.Form("a")
b=split(a,",")
Response.Write(ubound(b))
for i=0 to ubound(b)
Response.Write(b(i))
next
%>
有20个checkbox
2个被选中,显示结果为2on,on
10个被选中显示结果为10on,on,on,on,on,on,on,on,on,on
不能实现上面描述的目的:获得每个checkbox是否被选中这一结果。
这个问题让我不知所措。请举手救急。这是我仅有的分数,尽数奉上。

解决方案 »

  1.   

    把name取得都一样:比如都叫checkbox $(function(){
           $("#btnSub").click(function(){
              var str;
              $("[name='checkbox']").each(function(){
                if($(this).attr("checked"))
                {
                   str += $(this).val() + ",";           //这个str最后就是所有选中的chb的值,用逗号隔开的。
                }
              });
              window.location.href="你要跳转的页.aspx?params=" + str;  //跳转传过去
           });
    得值可以用split(‘,’)切开
      

  2.   

    这个应该不难呀,思路,遍历所有checkbox,对每个进行判断是否选中,选中的可记录其顺序编号,然后对应写入数据库。
      

  3.   

    以你的代码为例:
    <%
    a=Request.Form("a")
    b=split(a,",")
    Response.Write(ubound(b))
    for i=0 to ubound(b)
    Response.Write(b(i))
    next
    %>
    将你页面中所有checkbok的name属性都改为a
    b(i)这一句就获得了每一个选中的checkbox文本了
      

  4.   

    所以,你就可以在Response.Write(b(i))这行代码的位置,对每一个选中的checkbox进行处理了