【发布时间】:2016-09-28 16:42:49
【问题描述】:
此时我在 Tomee (v1.7.4) 中使用 Tomahawk20 (v1.1.14) 作为表单中的输入字段:
<t:inputText id="email" value="#{bean.klant.email}" maxlength="255" size="50" readonly="#{bean.aktie.readonly}" />
#{bean.aktie.readonly} 返回 true 或 false。 Tomahawk 负责设置 readonly 属性。
现在我想更改为 bootstrap.js。在这里我可以使用普通的<input /> 标签,但是只读的设置给我带来了麻烦。我搜索了互联网,但找不到解决方案。在一个站点上,他们建议使用三元测试 (${bean.aktie.readonly?'readonly':''}):
<input id="email" type="text" class="form-control" value="#{bean.klant.email}" maxlength="255" size="50" ${bean.aktie.readonly?'readonly="readonly":''} />
然而,这给了我错误:
javax.servlet.ServletException: Error Parsing /viewMetadata/bean/detail.xhtml: Error Traced[line: 99] 元素类型“input”必须后跟属性规范“>”或“/>”。
实现这一目标的最简单方法是什么?
【问题讨论】:
-
您的输入标签在很多方面都是无效的...在互联网上搜索类似的错误...下面的答案也是正确的。除非您打算完全放弃 jsf,否则它永远不会起作用。但如果你不这样做,请尝试 jsf passtrough(对 html5 友好的东西)或 bootsfaces
标签: html jsf twitter-bootstrap-3 jstl apache-tomee