特定のフィルタを使用して高度な検索を作成しようとしています。 現在、フィルタオプションを使用している場合、すべてが検索されますが、より具体的にしたいと考えています。私はあなたの代わりにすべての結果を検索の名前や場所を検索するためのオプションを提供しますドロップダウン作成したいフィルタを使用した高度な検索 - Angularjs
:選択したラジオボタンに応じて、
<form class="input-group col-md-4 form-inline">
<input type="text" class="form-control" placeholder="Search captures" ng-model="search"/>
<div class="input-group-btn">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">Options <span class="glyphicon glyphicon-cog"></span> </button>
<ul class="dropdown-menu">
<li><input type="radio" name="searchoption" value="All" id="All" checked><label for="all">Search through all</label></li>
<li><input type="radio" name="searchoption" value="Birdname" id="Birdname"><label for="birdname">Search by birdname</label></li>
<li><input type="radio" name="searchoption" value="Place" id="Place"><label for="place">Search by place</label></li>
</ul>
</div>
<span class="input-group-btn">
<button class="btn btn-default" type="button"><span class="glyphicon glyphicon-search"> </span></button>
</span>
</form>
は、私はfilter.search
変更します:
<li ng-repeat="capture in captures|filter:search:strict|orderBy:'created_at':true|startFrom:currentPage:10" class="masonry-item clickable">
だから基本的には、ユーザーが特定のラジオボタンを選択できるようにし、彼が選んだ内容に応じて特定の結果を検索します。
<input type="text" class="form-control" placeholder="Search captures" ng-model="search.$>
<input type="text" class="form-control" placeholder="Search captures" ng-model="search.birdname">
<input type="text" class="form-control" placeholder="Search captures" ng-model="search.place">
けれども、私はラジオボタンに応じて、それらを変更することができ、特定の方法がある:それは私の検索入力に私のNG-モデルは、次のいずれかである必要があることを述べてアンギュラドキュメントで
チェック?これは明らかです。
何らかの理由で、以下ものの、トリックをしたうん、: '' 'の '' 'isnデフォルトではチェックされていません。理由を知っていますか? – Pex
@CedricBongaerts私はすでにそれを私の投稿と言いました。コントローラ '$ scopeに' searchBy'のデフォルト値を設定する必要があります。searchBy = '$' 'を使用するか、html自体で' ng-init = "searchBy = '$'" 'を使用します。 – Braj
私の悪い..すべての助けてくれてありがとう! – Pex