2017-09-29 12 views
1

私は私たちのアプリケーションでmultiselectを持っています。複数選択ドロップダウン候補リストに非アクティブユーザーを表示する必要がないという要件があります。モデルには旗があります。そのフラグを使用してドロップダウンリストをフィルタリングできることを知る必要があります。アイデアを得るには添付のスクリーンショットをご覧ください。不活性なアイテムを隠して剣道の提案をマルチセレクション

このフラグを使用してajax呼び出しのデータをフィルタリングできます。しかし、すでに選択されている非アクティブユーザーの名前を取得する必要があります。だから、非アクティブなユーザーを提案リストからだけ隠すようにしています。

選択した非アクティブユーザーを表示する必要がありますが、非アクティブユーザーを非表示にする必要があります。 enter image description here

+0

それは少しあります複雑な....なぜ?非アクティブなユーザーの選択を解除するとどうなりますか?彼はドロップダウンリストに表示されていますか、あまりにも彼を隠す必要がありますか?そうであれば、フィルターと複数選択イベントの組み合わせが必要です。 –

+0

私たちが彼を選択解除したら、彼を隠さなければならない。主な目標は、非アクティブなユーザーをドロップダウン候補から隠し、名前が既に選択されている場合はその名前を表示することです。 – Nalluri

答えて

1

これが最善の方法ですが、あなたはcloseイベントでそれをopenイベントにデータソースにフィルタを適用し、削除してみてくださいすることができますかどうかわからない:

$("#multiselect").kendoMultiSelect({ 
    dataSource: { 
    data: [{Name: "test 1", Active: true, Id: 1}, 
      {Name: "test 2", Active: true, Id: 2}, 
      {Name: "test 3", Active: false, Id: 3}, 
      {Name: "test 4", Active: true, Id: 4}, 
      {Name: "test 5", Active: false, Id: 5}] 
    }, 
    value: [1, 3], 
    dataTextField: "Name", 
    dataValueField: "Id", 
    filter: "startswith", 
    open: function(e) { 
    this.dataSource.filter({ field: "Active", operator: "eq", value: "true" }); 
    }, 
    close: function() { 
    this.dataSource.filter(null); 
    } 
}); 

Demo

+0

ありがとうございました、DontVoteMeDown。完璧に動作します! – Nalluri

+0

@Nalluri nice !!喜んで助けてください! – DontVoteMeDown

関連する問題