【问题标题】:h:form renders name attribute, HTML validation failed, how to remove the attribute?h:form 呈现名称属性,HTML 验证失败,如何删除该属性?
【发布时间】:2016-11-02 05:44:33
【问题描述】:

我正在尝试通过我的代码的 HTML 验证 (https://validator.w3.org/),但我遇到了以下问题:

没有属性“NAME”
<FORM name="formMenu" id="formMenu" action=...

我使用的是JSF 1.2,生成这部分代码的标签如下:

<h:form id="formMenu" >
    ...
</h:form>

我一直在阅读有关该错误的信息,似乎是因为您不应该在表单中使用“名称”。问题是这个是从 jsf h:form 呈现的。 有什么办法可以删除“名称”属性?

【问题讨论】:

    标签: forms jsf jsf-1.2 html-validation name-attribute


    【解决方案1】:

    有什么办法可以删除“name”属性吗?

    是的,使用自定义渲染器。

    然而,更好的方法是将您的文档类型固定为 HTML5 而不是 HTML4 或 XHTML 严格。该属性在 HTML5 中是允许的,并且作为额外的优势,您正在赶上当前的技术状态。

    <!DOCTYPE html>
    

    另见:

    【讨论】:

    • 感谢 BalusC 的回答!我读了它,它很有趣!但是,我之前尝试过修复我的 doctype,但又遇到了另一个错误……无论我在代码中使用什么 Doctype,我总是得到一个具有以下 doctype 的 HTML:渡//EN">。我听说这是由于 Mojarra 的一些错误造成的……你知道吗?
    • JSF 1.2 太早了。我不记得与此相关的任何 JSF 1.2 特定错误。我最多可以建议尝试升级到最新的 Mojarra 1.2 实现,截至今天为 1.2_15-03
    猜你喜欢
    • 1970-01-01
    • 2020-06-14
    • 2012-05-31
    • 1970-01-01
    • 1970-01-01
    • 2011-03-02
    • 2018-03-15
    • 1970-01-01
    • 2020-06-03
    相关资源
    最近更新 更多