Web 小白请教一个问题,为什么在 html 表单中按下 enter,自动提交表单内容, http 就会 pending?而按下按钮再提交就一切正常?

2018-12-06 00:44:16 +08:00
 ArthurRen

前端的 jsp 页面:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
    <head>
        <meta charset="utf-8" />
        <title>登录</title>
        <link type="text/css" rel="stylesheet" href="css/signPage.css"/>
        <link type="text/css" rel="stylesheet" href="css/common.css"/>
    </head>
    <body>
        <%@include file="header.jsp"%>
        <div class="middleWrapper">
            <div class="formContainer">
                <form method="POST" action="http://127.0.0.1:8080/controller/SignInServlet">
                    <h2 class="formTitle">登录</h2>
                    邮箱:<br/>
                    <input type="text" name="email"/><br/>
                    密码:<br/>
                    <input type="password" name="password" /><br/>
                    <input type="submit" class="button" value="登录" />
                    <input type="button" class="button" style="float:right" value="注册" onclick="location.href='./signUp.jsp'"/>
                </form>
            </div>
        </div>
    </body>
</html>

2595 次点击
所在节点    前端开发
6 条回复
ArthurRen
2018-12-06 00:53:42 +08:00
Firefox 没有这个问题。。。
sker101
2018-12-06 00:58:19 +08:00
为啥提交西需要加个 onclick 跳转的事件?
FrankFang128
2018-12-06 01:04:34 +08:00
1. input type=submit
2. 删掉 onclick
ArthurRen
2018-12-06 22:45:03 +08:00
@sker101 这个是注册的按钮
ArthurRen
2018-12-07 00:59:32 +08:00
打开 chrome://net-internals 查看日志,发现请求似乎被拦截了

48765: URL_REQUEST
http://localhost:8080/controller/SignInServlet
Start Time: 2018-12-07 00:55:06.585

t=116783 [st=0] +REQUEST_ALIVE [dt=?]
--> delegate_blocked_by = "MojoAsyncResourceHandler"
--> has_upload = true
--> is_pending = true
--> load_flags = 2049 (MAIN_FRAME_DEPRECATED | VALIDATE_CACHE)
--> load_state = 3 (WAITING_FOR_DELEGATE)
--> method = "POST"
--> status = "SUCCESS"
--> url = "http://localhost:8080/controller/SignInServlet"
ArthurRen
2018-12-07 01:13:33 +08:00
感谢  https://www.v2ex.com/t/507334  这个帖子提供的一点线索。
卸载了 Proxy SwitchyOmega 就好了,看来请求是被这个代理的插件给拦截了。
也是醉了,我就想写一个登录的页面,没想到就被这个问题给堵了好几天,看来学习 web 开发真是长路漫漫。。。

感谢  @FrankFang128 @sker101 ,虽然没有解决问题,但还是感谢两位大佬的回复。

结贴。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/514758

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX