2014-07-23 76 views
0

我有一个带有h:(或p:)inputText组件的数据输入表单。我也有一个保存按钮来保存字段到后台bean。我想要的,实际上,我的老板想要的是禁用保存按钮,直到表单上的某些文本被更改,即等到表单变脏为止,然后才允许保存按钮处于活动状态。我知道如何使用Ajax来做到这一点;我想要做的是让它在客户端工作,因此它完全独立于服务器。如何使用javascript更改jsf按钮的禁用状态

+0

根据您使用JSF的实现,它应该是为使用JavaScript来选择一样简单按钮,添加一个禁用的类,设置“禁用”属性,以及其他任何您的实现使用。我使用PrimeFaces,所以我的“禁用此按钮”代码如下所示:'$('#tabs \\:disposition \\:submitPAButton> button')。addClass('ui-state-disabled')。attr('disabled ','disabled')。attr('aria-disabled','true');' – RevanProdigalKnight

+0

感谢您的信息 – wjr

回答

0

如果它的Primefaces命令按钮,那么你可以使用组件widgetVar调用客户端API函数来启用/禁用Javascript中的p:commandButton

例子:

的facelet代码:

<p:commandButton id="primeCmdBtn" widgetVar="primeBtnWidget"/> 

JavaScript代码:

primeBtnWidget.enable(); //to Enable the button 
primeBtnWidget.disable(); //to Disable the button