w100224 2015-01-07 15:38 采纳率: 85.7%
浏览 1760
已采纳

为什么这个form表单验证不成功?

 function checkDelForm() {
        var uids  = -1;
        uids = document.getElementsByName("delUids").length;
        if (uids == -1) {
            alert("请选择要删除的用户");
            return false;
        } else {
            return true;
        }
    }
<form name="userform" action="servlet/DeleteUserServet" method="post"
    onsubmit="return checkDelForm()">
    <table align="center" border="1" width="440px">
        <tr>
            <td colspan="6" align="center">用户资料</td>
        </tr>
        <tr>
            <td align="center">用户姓名</td>
            <td align="center">用户性别</td>
            <td align="center">出生日期</td>
            <td align="center">用户住址</td>
            <td colspan=2 align="center">操作</td>
        </tr>
        <%
            while (rs.next()) {
        %>
        <tr>
            <td><%=rs.getString("uname")%></td>
            <td><%=rs.getString("usex")%></td>
            <td><%=rs.getString("ubirth")%></td>
            <td><%=rs.getString("uaddr")%></td>

            <td><a
                href="UserListDetail.jsp?uid=<%=rs.getInt("uid")%>&&uname=<%=rs.getString("uname")%>&&usex=<%=rs.getString("usex")%>&&ubirth=<%=rs.getString("ubirth")%>&&uaddr=<%=rs.getString("uaddr")%>">编辑</a>
            </td>
            <td><input type="checkbox" name="delUids"
                value="<%=rs.getInt("uid")%>"></td>
        </tr>

        <%
            }
            conn.close();
            rs.close();
            stmt.close();
        %>
        <tr>
            <td colspan="6" align="center"><input type="submit" value="删除"
                style="width: 82px; "> <font color="green"> ${msg} </font>
            </td>
        </tr>
    </table>
</form>

  • 写回答

8条回答 默认 最新

  • Go 旅城通票 2015-01-08 01:12
    关注

    你只是判断delUids有多少个。而且也判断错了,是==0,不是==-1,改成下面的

        function checkDelForm() {
            var cbs = document.getElementsByName("delUids"), len = cbs.length, ok = false;
            for (var i = 0; i < len; i++)
                if (cbs[i].checked) {
                    ok = true; break;
                }
            if (!ok) {
                alert("请选择要删除的用户");
                return false;
            } else {
                return true;
            }
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(7条)

报告相同问题?

悬赏问题

  • ¥15 matlab中使用gurobi时报错
  • ¥15 WPF 大屏看板表格背景图片设置
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂