我正在尝试通过jQuery(由于性能而不使用reRender)使h:inputText禁用状态动态。
我有一个javascript函数,它负责更新一堆h:inputText的值和其他状态。更新它们的值没有问题,但是当涉及到更新禁用状态时,会发生奇怪的事情。即使尝试以下所有选项,我也无法实际禁用字段:
jQuery(document.getElementById('form:fieldID')).attr('disabled', 'disabled');
jQuery(document.getElementById('form:fieldID')).attr('disabled', true);
jQuery(document.getElementById('form:fieldID')).prop('disabled', true);
在字段上调用上述任何选项会导致最终的html等于<input disabled="">
,这也会启用之前禁用的字段。
我已经使用JSF 1.2和一堆jQuery版本进行了测试。
答案 0 :(得分:0)
您可以使用:http://api.jquery.com/attribute-ends-with-selector/
$("[name$=':fieldID']").attr("disabled", true); //for normal input field
$("[name$=':fieldID']").attr("disabled", true); //for checkbox and radiobutton (disable all options)
$("[name$=':fieldID'][id$=':1']").attr("disabled", true); //for checkbox and radiobutton second option