setStyleClass方法正在重写已定义的styleClass
setStyleClass method is overriding the already defined styleClass
我有一个jsf代码,如下所示:
<h:inputText id="emailText" styleClass="emailAddress" value="{bean.emailText}"/>
我正在添加样式emailAddress,以便在jquery中使用它,以限制用户在文本框中复制和粘贴文本,如下所示:
jQuery(".emailAddress").bind("copy paste",function(e) {
e.preventDefault();
});
但在点击Submit时,当文本字段被验证,并且如果输入的文本格式不正确时,我会在文本框中添加另一个样式类,以红色突出显示,如:
((HtmlInputText) getUIComponent(context, component, "emailText")).setStyleClass("error");
现在的问题是,新添加的样式类覆盖了现有的emailAddress类,该类用于限制jquery中的复制、粘贴。我在jquery中只使用类方法,因为我想在整个应用程序中将限制功能应用于所有电子邮件地址字段。所以,请帮我如何处理这种情况。我的意思是,当我们调用setStyClass()时,如何避免覆盖现有的样式类。谢谢
您可以尝试另一种方法:
首先在bean中创建方法,该方法返回用于文本字段验证的布尔值。
在styleClass属性中使用该方法可以在返回false时添加类"error"。
styleClass="emailAddress #{beanName.isvalidate eq true ? 'no-error' : 'error'}"
在提交按钮上,不要忘记更新h:inputText[使用update="emailText"作为提交按钮]
相关文章:
- 用嵌套函数和默认函数定义函数
- Dojo不解析自定义小部件的模板html中的小部件声明性
- 为什么“;未定义的“;在JavaScript中结束循环
- 要求未定义JS回调参数
- 控制台返回var不是't定义,但它是
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 如何检查管道中未定义的项目
- TypeError:无法读取属性'推'未定义的JavaScript
- jQuery自定义验证比较多个输入的序列
- 查看JS对象的所有键,甚至是getter定义的键
- fetch() 函数未在 Ubuntu Chromium 浏览器上定义
- $window.ga在AngularJS事件中未定义
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 未捕获的TypeError无法读取未定义的属性socialsharing
- WebDriverException:tinyMCE未在selenium Web driver java中定义
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- 定义完全独立的样式信息
- 如何在选项卡上定义属性'的主窗口对象
- setStyleClass方法正在重写已定义的styleClass