2016-12-29 11 views
0

私はBootsfacesを使い始めていますが、<b:selectManyMenu>タグで問題が発生しました。ここで

は私のXHTMLページです:VAR keyColumnskeyColumns1List<String>ある

<link rel="stylesheet" 
    href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"></link> 
<link rel='stylesheet' type='text/css' 
    href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-slider/9.4.1/css/bootstrap-slider.css"></link> 
<link rel='stylesheet' type='text/css' 
    href="https://cdn.datatables.net/1.10.13/css/dataTables.bootstrap.min.css 
    "></link> 
<link rel="stylesheet" type="text/css" 
    href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/0.9.13/css/bootstrap-multiselect.css"></link> 
<script 
    src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
<script 
    src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
<script 
    src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-slider/9.4.1/bootstrap-slider.js"></script> 
<script 
    src="https://cdnjs.cloudflare.com/ajax/libs/bootbox.js/4.4.0/bootbox.min.js"></script> 
<script 
    src="https://cdn.datatables.net/1.10.13/js/jquery.dataTables.min.js"></script> 
<script 
    src="https://cdn.datatables.net/1.10.13/js/dataTables.bootstrap.min.js"></script> 

<div> 
            <h:outputLabel value="Select key columns:"/> 
            <br></br> 
            <b:selectMultiMenu value="#{controller.keyColumns}"> 
             <f:selectItems value="#{controller.keyLista()}" var="f" 
              itemLabel="column: -#{f}" itemValue="#{f}"></f:selectItems> 
            </b:selectMultiMenu> 
           </div> 

します。 問題は、リストの要素が1つも選択されていないことです。ただし、<b:selectOneMenu>を使用すると問題なく動作します。

Googleコンソールに「Uncaught TypeError:$(...)。multiselectは関数ではありません」と表示されます。 Ps:私は他のプロジェクトの機能のためにすべてのスクリプトが必要で、私はbootsfacesタグを使ってすべてを変更することはできません。この場合にのみ適切なjqueryコードを使用する方法はありますか?

+0

だけPrimeFacesと同じように、すでにBootsFaces(bootstrap.jsなど)で利用できる場合がありますすべてのjsを除去することにより、起動 – Kukeltje

+0

ああとすごいです。 ..右側(関連する質問、StackOverflowの質問は、あなたが質問を作成したときにすでに表示されている可能性が高い)は、リテラルの複製です。https://stackoverflow.com/questions/27103898/bootstrap-multiselect-typeerror-multiselect-is -not-a-function?rq = 1と別のもの:https://stackoverflow.com/questions/26040431/bootstrap-multiselect-uncaught-typeerror-undefined-is-not-a-function?rq=1 – Kukeltje

答えて

0

ようKukeltjeはすでに書いた

おかげで、ちょうどこれらすべてのJavaScriptの輸入を削除します。彼らはすでにBootsFacesの一部であるため、それらは必要ありません。プラス、彼らは問題を引き起こします。 jQueryファイルをロードする前に、selectMultiMenuを初期化しようとしています。しかし、jQueryを最初にロードする必要があります。

更新:あなたの投稿スクリプトを見ました。これらのJSとCSSのすべての依存関係が必要な場合もありますが、すべてのページでそれぞれの必要はありません。たとえば、BootsFacesコンポーネントを含むすべてのページには、それ以外の場合はBootsFacesを設定しない限り、自動的にjQueryとBootstrapファイルが含まれます。 b:multiSelectMenuを含むすべてのページが自動的にJavaScriptファイルを読み込みます(これを無効にする方法はありません)。 http://showcase.bootsfaces.net/layout/resourcemanagement.jsfおよびhttp://showcase.bootsfaces.net/miscellaneous/Configuration.jsfも参照してください。

ところで、BootsFaces-1.1.0-SNAPSHOTに更新したいことがあります。 b:selectMultiMenuのいくつかのバグを修正しましたが、執筆時点ではまだMaven Centralに正式版は公開されていません。取得方法については、this ticketを参照してください。

、請求、ここにあなたのスニペットの作業最低限のバージョンです:

<?xml version='1.0' encoding='UTF-8' ?>                         
    <!DOCTYPE html>                               
    <html xmlns="http://www.w3.org/1999/xhtml"                        
      xmlns:h="http://java.sun.com/jsf/html"                       
      xmlns:f="http://java.sun.com/jsf/core"                       
      xmlns:b="http://bootsfaces.net/ui"                        
      >                                 
     <h:head>                               
      <title>BootsFaces rocks!</title>                        
      <meta name="author" content="Stephan Rauh"></meta>                    
     </h:head>                               
     <h:body>                               
      <b:selectMultiMenu value="#{formBean.combobox}">                     
      <f:selectItem itemValue="0" itemLabel="red"></f:selectItem>                  
      <f:selectItem itemValue="1" itemLabel="yellow"></f:selectItem>                 
      <f:selectItem itemValue="2" itemLabel="green"></f:selectItem>                 
      </b:selectMultiMenu>                            
     </h:body>                               
    </html>                                 
関連する問題