2011-07-28 15 views
1

jsfプロジェクトでjqueryを使用しようとしています。私はjquery dialogを開きたいと思います。ダイアログボックスが開き、私たちが望むものを実行できます。しかし、閉鎖されたrichfacesのタブは機能しません。除外するときJSF 1.2でJquery-UI-Dialogを使用する

<script type="text/javascript" 
      src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.js"></script> 
     <script type="text/javascript" 
      src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.js"> </script> 

解読 彼らは再び働いています。ここで

は、放火犯のエラー出力

Error: element.dispatchEvent is not a function 
Source File: http://localhost:8080/KOBAR/a4j/g/3_3_3.Finalorg.ajax4jsf.javascript.PrototypeScript 
Line: 265 

はここに私の.xhtmlページです。

<ui:define name="head"> 
     <script type="text/javascript" 
      src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.js"></script> 
     <script type="text/javascript" 
      src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.js"></script> 
     <f:verbatim> 
      <script type="text/javascript"> 

      function openStakeHolderPopUp(){ 
       //$('#stakeHolderPopUp').dialog('open'); 
        var popUpWindow = document.getElementById("stakeHolderPopUp"); 
        popUpWindow.setAttribute("style", "visibility:visible"); 
        $(popUpWindow).dialog({ 
         modal: true, 
         height: 100, 
         width: 200, 
         closeOnEscape: true, 
         close: function(ev, ui) { 
          $(this).dialog("destroy"); 
         } 
        }); 
       }; 
      </script> 
     </f:verbatim> 
    </ui:define> 

    <ui:define name="body"> 
     <RF:tabPanel> 
    <RF:tab label="Profil" id="tabProfil"> 
      <h:inputText id="value" readonly="true" onclick="openStakeHolderPopUp()"/> 
      <h:inputText id="name" required="true" value="#{company.name}"/> 
      </RF:tab> 
    <RF:tab label="Detay" id="tabDetail"> 
      </RF:tab> 


    <RF:panel id="stakeHolderPopUp"> 
    <ui:define name="label">Paydaş Adı</ui:define> 
     <h:inputText id="value" required="true"/> 
    </RF:panel> 

    </ui:define> 

ありがとう。

答えて

1

RichFaces 3.3.3は、1.3.xという独自のバージョンのjQueryを搭載しています。手動で組み込んだjQuery 1.6.2と衝突している可能性があります。以下を試すことができます:

  • RichFaces提供のjQueryライブラリを使用しないでください。必要に応じて、jQuery UIを1.3.x互換バージョンに変更します。

  • または jQuery UIダイアログの代わりに<rich:modalPanel>を使用してください。

+0

よくこの問題を解決しました。私が書いたメソッドの上に 'var JQ = jQuery.noConflict();'を追加しました。それは私に魅力的なjavascriptライブラリを使う助けになりました。そしてちょうどmodalpanelを見上げ、見た目が冷静です。ご回答ありがとうございます。 –