如何应用从javascript对jsf组件所做的更改?

时间:2019-04-24 16:15:43

标签: javascript jsf

我有两个jsf inputText,它们的类是从javascript动态更改的。这些inputText的类开始为数字形式,并在某些条件后变为字母数字形式。

<h:form id="mainForm">
<h:inputText id="otraIdUno"
   ...
   class="form-control soloNumeros" maxlength="15"
   ...>
</h:inputText>

从chrome中,如果我检查元素,则可以看到类的更改,但是inputText本身什么也没有发生,我的意思是我只能键入数字而不是字母。

<h:inputText id="otraIdUno"
   ...
   class="form-control alfanumerico" maxlength="15"
   ...>
</h:inputText>

从javascript中,我通过以下方式设置inputText的类:

$("#mainForm\\:otraIdUno").addClass("alfanumerico");

一个朋友告诉我尝试使用此指令来更新元素,但是它不起作用。

$("#mainForm\\:otraIdUno").load(location.href + " #mainForm\\:otraIdUno");

添加类后,我还尝试再次设置事件:

$(".soloNumeros").keypress(onlyNumbers);
$(".alfanumerico").keypress(alphaNumeric);

我不会在这里放置 onlyNumbers alphaNumeric 代码,因为它们只是常规函数,它们已经在与其他元素一起使用。

顺便说一句,如果我在这些inputText中的任何一个上运行代码之前设置了类,那么它会完美地工作。仅当我动态设置它时,它才起作用。

我想要的是这些inputText在某些情况下为数字,在其他情况下为字母数字,但始终为数字。

0 个答案:

没有答案