gpt4 book ai didi

jsf - 如何防止空格形成 JSF h :inputText

转载 作者:行者123 更新时间:2023-12-04 20:01:11 25 4
gpt4 key购买 nike

在我的 JSF 2.2 应用程序中,当我创建 JSF 表单时,问题是我可以在 <h:inputText> 的开头放空格当我从我的表单中插入它时,它会用我插入的值返回这些空格。所以我应该用 mystring.tirm() 处理每个值使空格无效。我可以使用其他任何东西来返回这个没有空格的值吗?我知道转换器和 JavaScript,所以你能给我另一个选择吗?我不想使用任何转换器和 JavaScript。

最佳答案

I don't want to use any converter and JavaScript



这里没有魔法。您必须编写代码才能完成这项工作。我认为您更关心的是您不想在每个输入字段上重复相同的转换工作。

在这种情况下,只需在 String.class 上专门注册一个转换器通过 forClass @FacesConverter 的属性像下面。
@FacesConverter(forClass=String.class)
public class TrimConverter implements Converter {

@Override
public Object getAsObject(FacesContext context, UIComponent component, String submittedValue) {
String trimmed = (submittedValue != null) ? submittedValue.trim() : null;
return (trimmed == null || trimmed.isEmpty()) ? null : trimmed;
}

@Override
public String getAsString(FacesContext context, UIComponent component, Object modelValue) {
return (modelValue != null) ? modelValue.toString() : "";
}

}

这样您就不需要在每个输入字段中都声明转换器。它将透明地应用于每个 String尚未注册显式转换器的模型值。

不推荐使用 JavaScript 方式,因为它完全在客户端运行,最终用户可以轻松禁用和操作 JavaScript。 JSF 转换器在服务器端运行,最终用户无法操作其结果。

关于jsf - 如何防止空格形成 JSF h :inputText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33233398/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com