私はあなたが探している XPage の第一人者ではありませんが、回避策があります =)
私の知る限り、外側のパネルを readonly="true" に設定すると、内側のすべての inputText ボックスは<inputField>
、html に no を出力します<span>
。入力のように見えるが、入力が無効になっているフィールドが必要な場合も、これは非常に面倒です。これは、todisabled="true"
および showReadonlyAsDisabled="true" を設定すると実現されます。
すべての readonly="false" を設定し、dojo.query を使用して、ページの読み込み時に無効なプロパティを次のように設定することをお勧めします。
<xp:scriptBlock>
<xp:this.value><![CDATA[dojo.ready(function(){
dojo.query(".input").forEach(function(node, index, array){
node.disabled = true;
}
)
});]]></xp:this.value>
</xp:scriptBlock>
<xp:panel>
<xp:inputText id="inputText1" value="#{viewScope.in1}" styleClass="input"
defaultValue="Txt0" >
</xp:inputText>
<xp:inputText id="inputText2" value="#{viewScope.in2}" styleClass="input"
defaultValue="Txt1">
</xp:inputText>
<xp:inputText id="inputText3" value="#{viewScope.in3}" styleClass="input"
defaultValue="Txt2">
</xp:inputText>
</xp:panel>
このソリューションのもう 1 つの利点は、サーバーを呼び出さずに clientSide で編集可能に設定できることです。それが役に立てば幸い。