隐藏输入在 servlet 中给出 null

Hidden Input is giving null in servlet

这个问题以前在论坛上有人问过,但我想不通。 所以,我将表单传递给 servlet,

<form method="Post" action="../JDBCConnector">
        <label for="fname">First Name : &nbsp;</label>
        <input type="text" name="fname" id="fname">

        <label for="lname">Last Name : &nbsp;</label>
        <input type="text" name="lname" id="lname">

        <label for="uname">Username : &nbsp;</label>
        <input type="text" name="uname" id="uname">

        <label for="pswrd">Password : &nbsp;</label>
        <input type="password" name="pswrd" id="pswrd">

        <input type="hidden" name="hide" id="hide" value=1>
        <button type="submit" name="submitButton" id="submitButton">Submit &nbsp;</button>
    </form>

servlet 端代码是,

String name = request.getParameter("hide");
        response.getWriter().print(name);
        String FNAME = request.getParameter("fname");
        response.getWriter().print(FNAME);

输出是

null TestName

基本上,我在隐藏字段的 servlet 中得到了一个空值。有人可以告诉我犯了什么错误吗?

HTML 不带引号的属性仅在特定条件下允许(显然在 XHTML 中不允许,部分允许但在 HTML4.x、HTML5 中不鼓励),有关此 see this post.

的更详细讨论

您只需更改您的代码:

<input type="hidden" name="hide" id="hide" value="1">