コマンドリンクのデータテーブルタグから、以下の形式のコンポーネントid=contractIdInputTextを参照したいと思います。@allの代わりにrender属性でそのIDを使用したいと思います。以下の@allを使用したのは、IDを参照できなかったためです。データテーブルはタグの外側と上にあります。
<h:form id="contracts">
<h:outputScript library="js" name="common.js" target="head"/>
<h:panelGrid columns="3" columnClasses="rightalign,leftalign,leftalign">
<h:outputLabel for="contractIdInputText" rendered="true" value="Contract Nooo.: " />
<h:inputText id="contractIdInputText" required="true" value="#contractManager.newContractId}" />
</form>
これは、データテーブルのコマンドリンクです。
<h:commandLink id="editLink" value="#{bundle.ListUnitEditLink}"
action="#{contractManager.updateContract}">
<f:ajax onevent="disablePK" render="@all" />
</h:commandLink>
リンク内のajaxの全体的な目的は、コマンドリンクをクリックしてフォームに入力したときにフォームコンポーネントを無効にすることです。また、@ allを使用すると(inputTextを無効にしてフォームに入力する)、データテーブル内のコマンドリンクでコマンドリンクを2回クリックして、フォームに別のフォームを入力する必要があることに気付きました。アイテム。なぜこうなった?