欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

form表单中包含复选框的提交问题代码解析

程序员文章站 2023-09-06 20:17:52
先上代码 //index页面代码
下面输入用...

先上代码

//index页面代码  
 <form id="myform" action="myjsp.jsp">     
下面输入用户名:<br> <input type="text" id="name" name="name" style={width:200px;}><br>  
下面输入密码:<br><input type="password" id="code" name="code" style={width:200px;} ><br>  
选择性别:<br> <input type="radio" name="sex" value="男" id="sex">男  
          <input type="radio" name="sex" value ="女" id="sex">女  
          <input type="radio" name="sex" value="李宇春" id="sex">李宇春<br>   
选择你的从业经历(以下内容请至少选择一项):<br>  
        <input type="checkbox" checked name="boxes" value="选择的内容是:" style={display:none}>//不显示的框  
        <input type="checkbox" name="boxes" value="资深程序员">资深程序员<br>  
        <input type="checkbox" name="boxes" value="java嵌入式以及游戏开发">java嵌入式以及游戏开发<br>  
        <input type="checkbox" name="boxes" value="j2ee企业开发">j2ee企业开发<br>  
        <input type="checkbox" name="boxes" value="实习 没做过开发">实习 没做过开发<br>  
        <input type="checkbox" name="boxes" value="做过兼职">做过兼职<br>  
        <input type="checkbox" name="boxes" value="我是来打酱油的">我是来打酱油的<br>  
        <input type="checkbox" name="boxes" id="txt">自己写  
         <input type="text" name="txt"><br>  
        <input type="submit" value="注册">  
   </form>  

接收页面代码

<%request.setcharacterencoding("utf-8");  
      response.setheader("iso-8859-1","utf-8");  
      response.setcharacterencoding("utf-8"); %>  
      <%! string name=" ",code=" ",sex=" ",txt=" "; %>  
    <% name = request.getparameter("name"); %>  
    <% code = request.getparameter("code"); %>  
    <% sex = request.getparameter("sex"); %>  
      
    <%string arr[] = request.getparametervalues("boxes"); %>  
   姓名: <%=name %><br>  
   密码: <%=code %><br>  
   性别: <%=sex %><br>  
   选项:<br>   
    
   <%if(arr.length==1) {%>  
          <%="复选内容没有选择" %>  
      <%    }  
          else {  
           for(int i = 0;i<arr.length;i++){ %>   
             <%=arr[i] %> <br>          
          <%}  
          } %>  

首先明确复选框的提交方法 在定义的时候定义每个框的name是一直的 然后提交到接收页面的时候便接收为数组

在输出的时候以数组的循环遍历形式输出 需要说一下的是 在form中有一个不显示的框 主要是为了解决复选框在没有选择时也可以顺利提交

而不出现空指针错误 试想:如果没有不显示的复选框 那么提交之后if(arr.length==0)这样来判断 而事实上这是执行不到的 因为arr.length==0的时候会出现空指针错误

页面根本跳转不过去 servlet跟jsp一样 不说了 ajax提交的话可以将复选框先用js代码处理一下 处理为数组或者 string逗号string的形式 然后在接收页面截取 后面的都还没做 具体实施之后再详细写一下

一开始的时候还想在一个页面写提交个接收 这怎么可能呢 肯定会空指针错误啊