【问题标题】:How to check value of checkbox using java servlet? [duplicate]如何使用 java servlet 检查复选框的值? [复制]
【发布时间】:2022-12-16 09:43:02
【问题描述】:

我在 servlet 类文件中有一个代码

String condition=req.getParameter("condition");
if(condition.equals("checked")
{
  //out.println(...)

}
else
{
  out.println("<h1>you have not accepted conditions"
}

在 index.html 文件中

<input type="checkbox" name="condition" value="checked"/>

如果框被选中它工作正常但在未选中它不显示其他块代码...

结果是网站仍然有效.. 但是在服务器日志文件中它给出了运行时错误..

【问题讨论】:

  • 答案是使用 try catch 块
  • 答案是差不多绝不“使用 try catch 块”。您遇到异常的原因是因为浏览器通常不会为未选中的复选框发送任何内容; condition 就是null。将 if 语句更改为 null-safe: if ("checked".equals(condition))
  • @罗布斯普尔答案几乎从来不是“使用 try catch 块”。从来没有一点困难。只有在 NPE 的情况下我才会同意
  • @Jens 这就是为什么我包含了“几乎”这个词。总有例外;这不是一个。

标签: java servlets checkbox


【解决方案1】:

使用下面的代码而不是 if else

      try{
            if(condition.equals("checked"))
            {
                //out.println();   
            }
        }
        catch(NullPointerException e)
        {
             out.println("<h2>You have not accepted conditions!!</h2>");
        }

有用!!

【讨论】:

  • 捕捉 NPE 是非常糟糕的做法。
猜你喜欢
  • 2011-10-14
  • 1970-01-01
  • 2016-10-29
  • 2016-12-12
  • 2021-01-24
  • 1970-01-01
  • 1970-01-01
  • 2023-03-26
相关资源
最近更新 更多