【问题标题】:Input text field from JSP in java servlet returns null valuejava servlet中来自JSP的输入文本字段返回空值
【发布时间】:2014-12-24 11:20:54
【问题描述】:

我对应该从用户接收日期值的文本值有疑问,以便我可以从我的 Manager 类中获取它。此输入返回 null。

这是我的文本输入代码:

<input type='text' name='the_date' id='the_date' value='<%=redac.getDelais()%>'>

这是我从 JSP 获取日期的 servlet 类中的代码:

String date = request.getParameter("the_date");
System.out.print("date"+date);  

谁能帮帮我。

【问题讨论】:

  • 文本字段是否确定填充了日期?是否启用?如果是这样,请发布完整的 Servlet 代码。
  • 贴出redac.getDelais()函数代码。

标签: jsp servlets


【解决方案1】:

我认为下面的代码不在表单标签中 请检查

<input type='text' name='the_date' id='the_date' value='<%=redac.getDelais()%>' >

【讨论】:

    【解决方案2】:

    当您使用 JSP 标记输出表达式时,它会打印出与 String.valueOf() 等效的内容。这意味着打印出设置为 null 的对象只会输出字符串“null”。你会想要做一个空安全检查,比如:

    &lt;input type='text' name='the_date' id='the_date' value='&lt;%= redac.getDelais() != null ? redac.getDelais() : "" %&gt;' /&gt;

    如果输入字段为空,request.getParameter() 调用将仅返回 null,因此您还需要在代码中检查它,而不是仅在可能为 null 的引用上调用 toString()

    【讨论】:

    • 你好!实际上,输入字段应该由用户编辑,是的,我应该管理 nullpointerexception 情况。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2015-04-18
    • 1970-01-01
    • 2013-03-08
    • 1970-01-01
    • 1970-01-01
    • 2020-05-21
    • 2023-03-29
    • 1970-01-01
    相关资源
    最近更新 更多