【问题标题】:Checking a checkbox based on a database entry on a JSP page根据 JSP 页面上的数据库条目检查复选框
【发布时间】:2012-05-15 13:22:49
【问题描述】:

这是我的复选框:

  <input type="checkbox" name="headC" id="headC" value="Head">

我有一个字符串变量&lt;%=msmtHead%&gt;,用于根据以下逻辑确定是否选中此复选框:If (&lt;%=msmtHead%&gt; !="") check else don't check。

我该如何进行这项工作?我有几个这样的复选框需要类似地检查。

我的研究告诉我应该使用 JSTL,但我不知道如何使用 &lt;c:if&gt; 标签来测试字符串值。

【问题讨论】:

    标签: jsp jstl


    【解决方案1】:

    您需要让 JSP 相应地打印 checked 属性。

    所以基本上,

    <input type="checkbox" name="headC" id="headC" value="Head" <%= ("Head".equals(msmtHead) ? "checked" : "") %>>
    

    或者用EL

    <input type="checkbox" name="headC" id="headC" value="Head" ${msmtHead == 'Head' ? 'checked' : ''}>
    

    【讨论】:

    • 既然 msmtHead 是一个 JSP 变量,不应该是: ${ == 'Head' 吗? '检查' : ''} ?
    • 不,您不能混合使用 scriptlet 和 EL。让 scriptlet 将其设置为请求属性,如 request.setAttribute("msmtHead", msmtHead)。它将以${msmtHead} 的形式提供。顺便说一句,共识是scriptlet 是不好的做法。您应该尝试删除和替换所有 scriptlet。
    猜你喜欢
    • 2013-03-09
    • 1970-01-01
    • 1970-01-01
    • 2012-11-27
    • 1970-01-01
    • 1970-01-01
    • 2017-07-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多