2017-07-11 18 views
0

私は、このデータテーブルを持っているの原因となるP型カラム内のp-チェックボックスを使用する:PrimeNGのdataTable:正常に動作エラー

<p-dataTable [value]="myObjects" [rows]="10" [paginator]="true" [pageLinks]="3"> 
    <p-column field="name" header="Name"></p-column> 
    <p-column field="size" header="Size"></p-column> 
    <p-column field="status" header="Is available ?"> 
     <ng-template let-col let-obj="rowData" pTemplate="body"> 
      <input type="checkbox" [checked]="obj.status" [(ngModel)]="obj.status" /> 
     </ng-template> 
    </p-column> 
</p-dataTable> 

今、私は入力タイプは、=「チェックボックスを」交換したいと思いますPrimeNGチェックボックス

<p-dataTable [value]="myObjects" [rows]="10" [paginator]="true" [pageLinks]="3"> 
    <p-column field="name" header="Name"></p-column> 
    <p-column field="size" header="Size"></p-column> 
    <p-column field="status" header="Is available ?"> 
     <ng-template let-col let-obj="rowData" pTemplate="body"> 
      <p-checkbox [(ngModel)]="obj.status"></p-checkbox> 
     </ng-template> 
    </p-column> 
</p-dataTable> 

これは、(ブラウザのコンソールで)次のようなエラーが発生します。 なぜですか?私は何が欠けていますか?

core.es5.js:1020 ERROR Error: Uncaught (in promise): TypeError: this.model.indexOf is not a function 
TypeError: this.model.indexOf is not a function 
    at Checkbox.isChecked (http://localhost:4200/vendor.bundle.js:110341:45) 
    at Checkbox.writeValue (http://localhost:4200/vendor.bundle.js:110362:29) 

フルスタックトレースhere

+1

をチェックボックスを使用してください、obj.status型アレイであるべきです。テーブルのチェックボックスを使用しているので、実際にはチェックボックスのグループを作成しています。あなたは ''のように使用し、tsファイルに 'selectedRows:[] any 'チェックボックスのマルチプルモードについてはここをクリックしてください。[https://www.primefaces.org/primeng/#/checkbox](https://www.primefaces.org/primeng/#/checkbox) – TimeTraveler

+0

私がこれを見つけたドキュメント:ありがとう。これを答えとして書くだけで、私はそれを受け入れます。 – Tim

答えて

3

[(ngModel)] = "obj.status" `ここバイナリオプションで

<p-checkbox [(ngModel)]="obj.status" binary="true"></p-checkbox> 
+0

これは実際に働いた&時間の多くを保存してくれてありがとう:) – user1058913

関連する問題