1

私はこのコードのビットを持っている私の角度テンプレートで:ブートストラップデータトグル属性が変更イベントを無効にします - 角度

<div class = "btn-group" data-toggle="buttons"> 
    <input type="text" class = "form-control" [(ngModel)]="siteFilter[filterType]" placeholder="Refine Search"> 
    <label class="btn btn-default"> 
     <input type="radio" (change)="changeFilter('1')" autocomplete="off">1 
    </label> 
    <label class="btn btn-default active"> 
     <input type="radio" (change)="changeFilter('2')" autocomplete="off" checked>2 
    </label> 
    <label class="btn btn-default"> 
     <input type="radio" (change)="changeFilter('3')" autocomplete="off">3 
    </label> 
</div> 

私はdata-toggle="buttons"属性を使用すると、私の(change)="changeFilter()をしても起動されません。 radioプレスでdata-toggleの機能を維持し、changeイベントトリガーを使用するにはどうすればよいですか?私がやってしまったことは、私の入力のそれぞれのためのフラグ変数を持っていた

+0

あなたは[NG-ブートストラップ]を使用して検討すること(https://ng-bootstrap.github.io/#/home)(角度4 +ブートストラップ4)。 [NgbRadioGroup](https://ng-bootstrap.github.io/#/components/buttons/api)は、あなたが探している機能を提供します。 [コード例](https://ng-bootstrap.github.io/#/components/buttons/examples)を参照してください。 – ConnorsFan

+0

はい、私は最初から 'ng-bootstrap'を使用していたはずですが、今はアプリケーション全体を変換する必要はありません。ブートストラップ3の残りの要素に影響を与えずに 'ng-bootstrap'を使う方法はありますか? – ecain

+0

Bootstrapに多くの経験はありませんが、Bootstrap 3(CSS + jQuery)とng-bootstrap(Bootstrap 4 CSS、jQueryなし)を混在させることはできません。両者を混在させると、ng-bootstrapと[Bootstrap 4へのアップグレード](https://v4-alpha.getbootstrap.com/migration/)に変換するよりも複雑になる可能性があります。 – ConnorsFan

答えて

1

[ngClass]="nameFilterActive ? 'btn btn-default active': 'btn btn-default' 

はその後、私のコンポーネントで私が押されたものに応じてフラグを変更します機能を持っていました。

0

(それは私のために働いていた)ラベルにクリックイベントをバインドするようにしてください:

<label class="btn btn-default" (click)="changeFilter('1')"> 
    <input type="radio" autocomplete="off">1 
</label> 
+0

私はそれを試みたと信じています。これは普通に動作しますが、 'data-toggle =" buttons "'で動作しますか? – ecain

+0

はい、私はそれに取り組んでいます。私はブートストラップ4を使用しています。 – deguez07

+0

これは数時間の検索の後に私のために働いていました。ブートストラップ3.ありがとう –

関連する問題