1

サーバー フィルタリングを使用して、剣道の複数選択コントロールでアイテムを選択する機能を実装しようとしています。ユーザーが選択した項目でタブを押したとき。kepdown イベントのコードは次のとおりです。

if (e.keyCode === 9) {
       var selectedItem = multiSelect.current();

       if (selectedItem) {

            var selectedIndex = selectedItem.data("idx");

            if (selectedIndex >= 0) {

                var currentValue = multiSelect.value().slice();    
                var dataitems = multiSelect.dataSource.view();
                var selectedDataItem = dataitems[selectedIndex];

                multiSelect.dataSource.filter({});
                currentValue.push(selectedDataItem.relatedId);
                multiSelect.value(currentValue);

                multiSelect.trigger("change");
            }
         }
      }

しかし、同じデータ ビューで検索している限りは問題なく動作します。たとえば、Cloud で始まる 2 つの値を選択し、次に App で始まる値を選択すると、剣道は Cloud で始まる前の 2 つの値を削除し、コントロールには値が 1 つだけ含まれます。最後に選ばれました。

kendo の関数 _index で問題が発生している kendo のコードをデバッグしました。

http://dojo.telerik.com/OtAviで問題を再現しました。

4

1 に答える 1