根据 p:inputText 的空值启用/禁用
enable / disable based on the null value for p:inputText
我想创建一个 JSF 应用程序。在应用程序中,用户将从数据库中搜索用户记录并在表单中设置值,然后提交表单。
我有一个小问题,我需要根据 p:inputText
的空值启用/禁用
- 如果为数据库中的字段设置了空值,则启用
p:inputText
的输入
- 如果为数据库中的字段设置了值,则禁用或
让它只读 p:inputText
这样,如果字段中没有设置任何值,用户将能够输入值。
如何实现?
<p:inputText id="firstName" value="#{javaMB.infoEntity.firstName}"/>
<p:inputText id="lastName" value="#{javaMB.infoEntity.lastName}"/>
<p:inputText id="age" value="#{javaMB.infoEntity.age}"/>
this.infoEntity.setFirstName(view.getFirstName());
this.infoEntity.setLastName(view.getLastName());
this.infoEntity.setAge(view.getAge());
DB
Mark XYZ 45
Sav NULL 23
NULL Jones 33
如果我们设置第二行,则名字的 p:inputText 被禁用,姓氏的 p:inputText 被启用,年龄的 p:inputText 被禁用。
如果我们设置第三行,则启用名字的 p:inputText,禁用姓氏的 p:inputText,禁用年龄的 p:inputText
我试过的
使用 readonly="true" 无效,因为如果为其设置了空值,我需要输入 p:inputText。
<p:inputText id="lastName" value="#{javaMB.infoEntity.lastName}" disabled="{!check}"/>
public Boolean check{set;}
如果需要任何说明,请告诉我,
您可以使用 Java EE EL (Expression Language) 的力量。
在您的情况下,如果 lastName 的值 not,则以下声明将生成 disabled p:inputText
空
<p:inputText id="lastName" value="#{javaMB.infoEntity.lastName}"
disabled=#{not empty javaMB.infoEntity.lastName}/>
或
<p:inputText id="lastName" value="#{javaMB.infoEntity.lastName}"
disabled=#{javaMB.infoEntity.lastName != null}/>
我想创建一个 JSF 应用程序。在应用程序中,用户将从数据库中搜索用户记录并在表单中设置值,然后提交表单。 我有一个小问题,我需要根据 p:inputText
的空值启用/禁用- 如果为数据库中的字段设置了空值,则启用 p:inputText 的输入
- 如果为数据库中的字段设置了值,则禁用或 让它只读 p:inputText
这样,如果字段中没有设置任何值,用户将能够输入值。 如何实现?
<p:inputText id="firstName" value="#{javaMB.infoEntity.firstName}"/>
<p:inputText id="lastName" value="#{javaMB.infoEntity.lastName}"/>
<p:inputText id="age" value="#{javaMB.infoEntity.age}"/>
this.infoEntity.setFirstName(view.getFirstName());
this.infoEntity.setLastName(view.getLastName());
this.infoEntity.setAge(view.getAge());
DB
Mark XYZ 45
Sav NULL 23
NULL Jones 33
如果我们设置第二行,则名字的 p:inputText 被禁用,姓氏的 p:inputText 被启用,年龄的 p:inputText 被禁用。 如果我们设置第三行,则启用名字的 p:inputText,禁用姓氏的 p:inputText,禁用年龄的 p:inputText
我试过的
使用 readonly="true" 无效,因为如果为其设置了空值,我需要输入 p:inputText。
<p:inputText id="lastName" value="#{javaMB.infoEntity.lastName}" disabled="{!check}"/>
public Boolean check{set;}
如果需要任何说明,请告诉我,
您可以使用 Java EE EL (Expression Language) 的力量。
在您的情况下,如果 lastName 的值 not,则以下声明将生成 disabled p:inputText
空
<p:inputText id="lastName" value="#{javaMB.infoEntity.lastName}"
disabled=#{not empty javaMB.infoEntity.lastName}/>
或
<p:inputText id="lastName" value="#{javaMB.infoEntity.lastName}"
disabled=#{javaMB.infoEntity.lastName != null}/>