Css <;o:表单样式类>;使用MyFaces而不是Mojarra时不渲染
我一直在用JSF2.0 Tomee1.7.3开发一个网站。 在我问的最后一个问题中: 我得到了建议,决定从GlassFish(Mojarra)Faces迁移到myFaces,因为myFaces是TomEE的标准JSF实现 然后我意识到,“OmniFacesV1.8.3 Form”并不是用“style”或“styleClass”来呈现css类属性,如果我使用TomEE的默认myFaces。它在Mojarra上运行得很好,但是现在我的HTML布局被破坏了,我必须修复它 我使用“OmniFaces表单”的原因是,我真的想使用Css <;o:表单样式类>;使用MyFaces而不是Mojarra时不渲染,css,jsf,jsf-2,myfaces,omnifaces,Css,Jsf,Jsf 2,Myfaces,Omnifaces,我一直在用JSF2.0 Tomee1.7.3开发一个网站。 在我问的最后一个问题中: 我得到了建议,决定从GlassFish(Mojarra)Faces迁移到myFaces,因为myFaces是TomEE的标准JSF实现 然后我意识到,“OmniFacesV1.8.3 Form”并不是用“style”或“styleClass”来呈现css类属性,如果我使用TomEE的默认myFaces。它在Mojarra上运行得很好,但是现在我的HTML布局被破坏了,我必须修复它 我使用“OmniFaces表
includeRequestParams=“true”
特性,这在Mojarra和myFaces中都有效
我的xhtml看起来像下面这样:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:o="http://omnifaces.org/ui"
>
<h:body>
<ui:composition template="templates/common.xhtml">
<ui:define name="content">
<o:form prependId="false" styleClass="form-horizontal" includeRequestParams="true">
<!-- some inputText, labels, and buttons here -->
</o:form>
</ui:define>
</ui:composition>
</h:body>
</html>
但它没有修复布局,可能是因为css样式附加到表单内部的对象,而不是表单本身(我使用的是css引导)
请帮帮我!谢谢。这是
中的一个错误。它从类扩展而来,但没有定义所有非公共属性。我希望它能从我的脸上延伸出来。它在今天的中提供。表单的生成标记说明了什么?可以接受表单内部的div吗?@Mahendran Ayyarsamy Kandiar-尽管我必须编辑所有jsf页面,但您的回答(在表单内部添加div)解决了我的问题,谢谢!我暂时不提我的问题,因为我希望有一个直截了当的答案。顺便说一句,整个class属性被删除,其他属性与mojarra相同。尝试使用omnifaces-2.2。如果问题仍然存在,请在中发布生成的HTML输出是什么样子的?右键单击浏览器中的页面,查看源代码,您是否看到
仍在那里,或者您是否看到HTML
?症状表明它未被识别/编译/呈现。然后你应该告诉我你到底是如何安装OmniFaces的。酷!非常感谢。事实上,我正在使用OmniFaces 1.8.3,现在正努力启动Tome7.0.0-M1,以便我可以使用您修复的最新OmniFaces快照…@HirofumiOkino如果您面临Tome7和OmniFaces 2.3的问题,请打开一个新问题
<form id="j_id_1k" name="j_id_1k" method="post" action="/foo.xhtml">
(function() {
var forms = document.forms;
for (var i = 0; i < forms.length; i++){
if (forms[i].id !== "headerForm"){
forms[i].class = "form-horizontal";
}
}
})();