form表单中οnsubmit无效的问题解决办法

起因:

在用idea写jsp页面时,经常碰到需要判断表单中是否非空的时候,
然后在form后加上οnsubmit就可以阻止表单的提交。

但是,我这次就碰到了问题,
因为之前写过相同的代码,图省事就直接复制了过来,如下👇
在这里插入图片描述
然而万万没有发现,问题就隐藏在这其中。。。😭

处理:

尝试了几种我常出错的可能,

  1. form写成from情况,这个我之前常犯,这次不是
  2. script中的属性id与表单中的id没有匹配上,这次也不是
  3. onsubmit格式错误,要是写成 οnsubmit="demo()"就错了, οnsubmit="return demo()"才对

反反复复,把代码测试删减到最少,还是不行,查了下别人的博客也没有发现新的知识点。。。

最后决定全部删除手打一边,如下👇
在这里插入图片描述

然后就发现了问题所在。。。
在这里插入图片描述
在这里插入图片描述
。。。。。。。
可以看到了内容并没有变化,但是颜色不一样了,果然啊,是一开始偷懒复制粘贴的时候出的问题,好家伙折磨我1个多小时。。。这是idea独有的吗

总结:

下次还是手打代码稳妥点!

其实还写了另一种方法,但就是觉得上面那种没错于是就钻进死胡同了,另一种完整的👇

<%--
  Created by IntelliJ IDEA.
  User: qsX
  Date: 2020/5/11
  Time: 9:53
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>上传</title>
</head>
<body>
<center>
    请输入姓名、学号和要上传的文件(只能是png、jpg、gif类型)
    <div style="width:540px;border:1px solid black;background-color:#ddd">
        <form action="../../UploadServlet " id="form1" name="form1" method="post" enctype="multipart/form-data" >
            学号:<input type="text" name="uno" id="uno" ><br>
            姓名:<input type="text" name="uname" id="uname" ><br>
            上传照片:<input type="file" name="spicture" id="file"/>
            <input type="submit" value="提交">
        </form>
    </div>
</center>
</body>
<script type="text/javascript">
    function demo()
    {
        var name = document.getElementById("name");
        var pass = document.getElementById("pass");
        var file = document.form1.file.value.toString().trim().length;
        var errStr = "";
        if (uname.value == "" || uname.value == null)
        {
            errStr += "用户名不能为空\n";
        }
        if (uno.value == "" || uno.value == null)
        {
            errStr += "密码不能为空\n";
        }
        if (file <= 0)
        {
            errStr += "请选择要上传的文件\n";
        }
        if (errStr == "" || errStr == null)
        {
            return true;
        }
        alert(errStr);
        return false;
    }
    document.getElementById("form1").onsubmit = demo;
</script>
</html>

在这里插入图片描述

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值