からの値のリストがあります。値のリストから、いくつかの値を確認したい場合、対応するテキストボックスが下部に表示されます。それ以外の場合、テキストボックスは非表示になります。JavaScriptを使用してこのプロセスを実行しました。しかし、私の問題は、required=true 属性を使用して検証する必要があることです。しかし問題は、非表示のテキスト ボックスも検証されていることです。
リスト値の Primefaces ページ:
<p:selectManyCheckbox onchange="checkValue();" value="#{volunteerBean.knowAbt}" layout="pageDirection" id="s" immediate="true" required="true" requiredMessage="Select how to konws about cv?" style="width:300px;height:170px;">
<f:selectItems value="#{volunteerBean.hearLst}" var="he" itemLabel="#{he}" itemValue="#{he}" />
<p:ajax event="change" update="msg1111" />
</p:selectManyCheckbox>
入力テキスト ボックスのコーディング:
<p:inputText style="display:none;" id="searchEngine" value="#{volunteerBean.searchEngine}"><p:watermark for="searchEngine" value="Search Engine"/>
checkBox のリストをチェックして、inputText を非表示および表示するための JavaScript:
function checkValue() {
var chk = document.getElementById("volunteerForm:s:10");
if (chk1.checked) {
document.getElementById('volunteerForm:searchEngine').style.display='';
}else {
document.getElementById('volunteerForm:searchEngine').style.display='none';
}
}
私はprimefaces 3.0とjsf 2.0を使用しています。解決方法