0

jsf コンポーネント (h:inputFile & h:selectBooleanCheckbox) に奇妙な問題があります。

マウスがページ上の別の場所にある場合でも、両方のコンポーネントがフォーカスを受け取ります。コードは次のとおりです。

<h:form id="logoUpload" enctype="multipart/form-data">
  <div>      
   <h:outputLabel rendered="true">
      <h:inputFile id="companyLogo" label="file" value="#{fileHandlerBean.part}" >
       <f:validator validatorId="FileUploadValidator" />
      </h:inputFile>
   </h:outputLabel>
 </div>

<div class="clear" />

<h:outputLabel rendered="true">
 <div>
   <div style="width: 5%">
    <h:selectBooleanCheckbox id="acceptToULogo" value="#{companyEditController.confirmToU}">
     <p:ajax event="change" update="buttonLogo" />
    </h:selectBooleanCheckbox>
 </div>

  <div style="width: 95%">
  <h:outputText value="Some Text " /> 
  </div>
 <br />

<h:commandButton id="buttonLogo" styleClass="formbutton" value="Upload"
      action="#{companyEditController.companyLogoUpload()}" 
      actionListener="#{fileHandlerBean.uploadCompanyLogo()}" 
      disabled="#{!companyEditController.confirmToU}"/>    
 </div>
</h:outputLabel>
</h:form>

h:outputText の上にマウスを移動すると、チェックボックスがフォーカスを受け取ります。h:inputFile タグにも同じ問題がありました。ah:outputLabel タグで囲んで解決しましたが、残念ながら selectBooleanCheckbox では機能しません。

誰かが過去に同じ問題を抱えていて、解決策を知っていますか?

4

1 に答える 1