8

使用したい(Primefaces with TwitterBootstrap)。現在、ドロップダウンメニューは、たとえばap:dataTableが存在する場合は機能しません。次の順序で動作している場合(Primefacesコンポーネントなしで)動作していることがわかりましたh:head

<h:head>
  <h:outputScript library="js" name="bootstrap.js"/>
  <h:outputScript library="primefaces" name="jquery/jquery.js"/>
  ...
</h:head>

順序を入れ替えると(bootstrap.jsよりも最初のjquery.js)、DropDownメニューが壊れます。私の問題は、レンダリングされたHTML出力でPrimeFacesコンポーネントを使用すると、PrimeFacesで使用されるスクリプト(jquery.jsおよびprimefaces.js)が常に。の手動入力の前にあることh:headです。

<script src="/javax.faces.resource/jquery/jquery.js.jsf?ln=primefaces"></script>
<script src="/javax.faces.resource/primefaces.js.jsf?ln=primefaces"></script>
<script src="/javax.faces.resource/bootstrap.js.jsf?ln=js"></script>

bootstrap.js以前にインポートするにはどうすればよいjquery.jsですか?

4

1 に答える 1

13

問題がリソースの包含順序に関連している場合は、PrimeFacesチームの次のブログ投稿を参照してください:カスタマイズ可能なリソースの順序

first要素内にファセットを定義できますh:head。そこに配置された要素は、PrimeFacesリソースの前にロードされます。

<h:head>
    <f:facet name="first">
        <h:outputScript library="js" name="bootstrap.js"/>
    </f:facet>
</h:head>
于 2012-04-18T10:21:07.603 に答える