【发布时间】:2015-06-22 13:27:50
【问题描述】:
所以我使用 JSF 开发了一个 Web 应用程序,并为我的按钮/文本输入字段设置了名称和 ID。但是当我打开网页并执行检查元素时,我看不到每个字段的相应名称/ID。相反,我看到的是:j_idtx:j_idty,其中 x 和 y 是一些数字,例如:j_idt2:j_idt5。
在使用 JSP 而不是 JSF 进行开发时,我没有看到这个问题。
这是一个将按钮设置为特定名称的示例代码:
<ui:composition template="WEB-INF/templates/BasicTemplate.xhtml">
<ui:define name="content">
<h:form>
<h:commandButton action="login_page" value="Login" name="loginButton"></h:commandButton>
<br></br>
<br></br>
<h:commandButton action="registration_page" value="Register" name="registrationButton"></h:commandButton>
</h:form>
</ui:define>
</ui:composition>
那么如何确保我的姓名和身份证件正确显示?
谢谢
【问题讨论】:
-
您必须在表单“prepand=false”上添加属性。如果您有 id="formID" 的表单,则表单中的元素将具有 preand 表单的 ID,后跟冒号,例如子元素将具有 id="formID:childID"。一些 jsf 组件生成它们自己的代码,它们也生成 id。更好地坚持上课
-
好的,名字呢?我主要是按名称而不是ID。添加 prepand="false" 不会更改名称。
-
我建议你阅读这篇文章stackoverflow.com/questions/15893876/…
-
@BalusC,这是一个糟糕的词选择,没关系。我以为这是个问题。那么我怎样才能明确地给按钮起一个名字呢?
-
猜猜我会使用客户端 ID。