【问题标题】:How to disable html button using JSTL tags如何使用 JSTL 标签禁用 html 按钮
【发布时间】:2011-05-17 10:26:31
【问题描述】:

我想根据 Spring bean 中存在的值禁用 HTML 按钮。我正在使用 JSTL empty 属性但没有运气。
这是我的代码

   <input type="submit" value="SendEmail" disabled="${empty reportNotificationFbo.providersList}" >  

这里reportNotificationFbo 是spring bean,providersList 是一个列表。

如果providersList 为空,我想禁用Submit 按钮。

-谢谢。

【问题讨论】:

    标签: spring jstl


    【解决方案1】:

    按钮的状态由disabled 属性的存在控制,而不是由它的值控制。请尝试以下操作:

    <input type="submit" value="SendEmail"
        "${(empty reportNotificationFbo.providersList) ? 'disabled' : ''}" >   
    

    【讨论】:

    • 感谢 axtavt :) 在正确的地方找到了东西 :) 再次感谢 :)
    • 请注意,这对我不起作用,我收到org.apache.jasper.JasperException: Unterminated &amp;lt;stripes:select tag
    • 你不会真的想要引号,是吗?
    • 这个解决方案对我也不起作用。得到错误未终止的 [
    【解决方案2】:

    如果您的disabled 属性具有任何值,它将在浏览器中呈现为禁用

    试试

    <c:choose>
        <c:when test="${empty reportNotificationFbo.providersList}">
            <input type="submit" value="SendEmail" disabled="disabled" >
        </c:when>
        <c:otherwise>
           <input type="submit" value="SendEmail"  >
        </c:otherwise>
    </c:choose> 
    

    抱歉,我没有检查此代码

    【讨论】:

    • 谢谢里维斯。以上答案有效。也会试试你的,但现在我没时间了。谢谢:)
    • 这两种方法都应该有效。 disabled="false" 不起作用的原因是具有任何值(包括 false)的 HTML disabled 属性将使按钮被禁用。这是原始 html 规范的一部分,其中实际上不需要属性值。这在这里解释stevefenton.co.uk/Content/Blog/Date/201104/Blog/…
    • 如果我的 直到选择之后才出现怎么办?它会抛出一个错误。
    • @JL 可能值得您在 S.O. 上发布您的标记作为问题。 (如果你还没有),从我看到你正在使用条纹......
    • 是的,我使用的是&lt;stripes:select&gt; 标签,似乎这些答案都不起作用。我们通过将其切换为 &lt;input&gt; 来解决它
    猜你喜欢
    • 2011-03-02
    • 1970-01-01
    • 2011-12-03
    • 2013-06-26
    • 1970-01-01
    • 1970-01-01
    • 2016-09-25
    • 2021-10-24
    • 2012-10-27
    相关资源
    最近更新 更多