为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

守候你守候我 2019-04-11 14:15:02
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 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

你只是判断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;
        }
    }


查看完整回答
反对 回复 2019-05-07
?
波斯汪

TA贡献1811条经验 获得超4个赞

检查下UserListDetail.jsp的程序,传进去的值对不对


查看完整回答
反对 回复 2019-05-07
?
浮云间

TA贡献1829条经验 获得超4个赞

就不能用jquery吗? 有没有选中复选框不是这样判断的好吧


查看完整回答
反对 回复 2019-05-07
?
慕容3067478

TA贡献1773条经验 获得超3个赞

function checkDelForm() {
var uids = -1;
uids = document.getElementsByName("delUids");
len = uids.length;
var j = 0;
for(var i=0;i<len;i++){
if(uids[i].checked){
j++;
};
}
if (j == 0) {
alert("请选择要删除的用户");
return false;
} else {
return true;
}
}
脚本应该这么写,document.getElementsByName("delUids");返回的是所有name=delUids一个集合,要判断属性checked是否为true

查看完整回答
反对 回复 2019-05-07
?
月关宝盒

TA贡献1772条经验 获得超5个赞

使用perseInt()转化类型在比较试试。。。


查看完整回答
反对 回复 2019-05-07
?
守着星空守着你

TA贡献1799条经验 获得超8个赞

你的uids的值是有多少个复选框 并不是多少个选中的复选框 你需要遍历一遍 判断复选框的checked属性 才能得到被选中的复选框个数


查看完整回答
反对 回复 2019-05-07
?
长风秋雁

TA贡献1757条经验 获得超7个赞

选中的选项是【checkBox.checked == true】 ljy19900123 说的是对的……请自寻查阅。


查看完整回答
反对 回复 2019-05-07
?
慕的地6264312

TA贡献1817条经验 获得超6个赞

除了要判断个数,是不是还要检查一下每一项的是否正确


查看完整回答
反对 回复 2019-05-07
  • 8 回答
  • 0 关注
  • 743 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信