0

我的jsp中有一个简单的输入字段。它在大多数浏览器中都可以正常工作,而在 IE 中则不然。

当表单在 IE 中使用时,只有第一次提交才会起作用。由于表单中的某些参数丢失,因此之后的每次提交都会“失败”。这不是 Chrome 或 Firefox 的问题。如果我在每次提交之间重新加载页面,它在 IE 上也可以正常工作,但这不是一个选项。

形式:

<form id="form1" method="post" action="receiver.htm">
<table>
    <tr id="name">
        <td>Name</td>
        <td><input id="input_name" name="name"/></td>
    </tr>
    <tr>
        <td>Amount</td>
        <td><input id="amount" name="amount" type="text"/></td>
    </tr>
    <tr>
        <td>Unit</td>
        <td><input id="unit" name="unit" type="text"/></td>
    </tr>
    <tr>
        <td colspan="2"><input id="submit_button" type="submit" value="submit"/></div>
        </td>
    </tr>
</table>
</form>

控制器:

@RequestMapping(value = "/receiver.htm", method = RequestMethod.POST)
@ResponseBody public String receive(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
    String name = httpServletRequest.getParameter("name");
    String amount = httpServletRequest.getParameter("amount");
    UnitType unit = UnitType.getValue(httpServletRequest.getParameter("unit"));
}

UnitType 是我制作的一个枚举。并且在使用 IE 进行第二次提交后,它会引发以下异常,因为某些参数返回为 null:

java.lang.NullPointerException: Name is null
4

0 回答 0