2016-05-17 12 views
0

私は、このドロップダウンメニューがあります。ドロップダウンリストの選択された要素をボタンに表示するにはどうすればよいですか?

<div class="input-group"> 

    <div class="input-group-btn"> 

    <button type="button" class="btn btn-default dropdown-toggle" 
    data-toggle="dropdown" aria-haspopup="true" 
    aria-expanded="false"> 

    All Categories 

    <span class="caret"></span></button> 

    <ul class="dropdown-menu" ng-model = "cat"> 

     <li><a href="#">All Categories</a></li> 
     <li role="separator" class="divider"></li> 
     <li><a href="#">Clothes</a></li> 
     <li><a href="#">Electronics</a></li> 
     <li><a href="#">Books</a></li> 
     <li><a href="#">Other</a></li> 
    </ul> 
    </div> 

は私の代わりに「すべてのカテゴリ」で、ボタンのラベルのリストから選択した要素を表示するために何を行うことができます。または、ラベルを削除して、デフォルトの選択した項目を「すべてのカテゴリ」の最初の項目に設定することはできますか?

また、別の質問ですが、角度を使用してJSファイルで選択した値にどうやってアクセスできますか?

$scope.cat.value 

doesntは動作しているようです。

+0

あなたはフィドルを投稿できますか?または角度コード? – pparas

+0

2番目の質問を別のスレッドとして投稿してください。 –

答えて

1

あなたangularjsに$ scope.selected変数を宣言は、選択変数の値を設定するためのangularjsからNGクリックを追加し、あなたのリスト項目タグ(オプション)code.Modify。たとえば:あなたはそれをクリックすると

<li ng-click="selected = 'option1'"><a>Option1</a></li>

、その後、選択変数は値「オプション1」が割り当てられます。

別のオプションは、NG-クリックの内側の角度コードから関数を呼び出すことができます

ng-click="selectItem('option1')"

次に角度コードで:

$scope.selectItem = function(value) { $scope.selected = value; }

あなたが取得したい場合あなたの角度範囲変数の値は$ scope.variableだけです。この場合、$ scope.selectedになります

+0

これらの回答はどちらもうまくいきません。 「cat」はドロップダウンメニューなので、何かに設定すると何も起こりません。 $ scope.catを記録すると、 "undefined"が出力されます。 – ninesalt

+0

その$ scope.catを呼び出す場所からanglejsコードを追加します。また、あなたのHTMLコードのどこにあなたのng-appまたはng-controllerが宣言されていますか? –

+0

問題は角度コードが長すぎます。私は、ファイルの先頭にng-appとng-controllerを宣言します。コントローラは、他のものが機能するため正しくリンクされていますが、これは非常に大きなもののごく一部です。 – ninesalt

関連する問題