web-dev-qa-db-ja.com

剣道UIコンボボックスリセット値

カスケードモードでKendoUI ComboBoxを使用して、適用したいフィルターを作成しています。

Kendo UI ComboBoxの値をクリア/リセットするにはどうすればよいですか?

私はもう試した:

$("#comboBox").data("kendoComboBox").val('');
$("#comboBox").data("kendoComboBox").select('');
$("#comboBox").data("kendoComboBox").select(null);

すべて無駄に。プロジェクトはRazorエンジンを使用したMVC4アプリであり、コードは基本的に 剣道UIの例 と同じです。

13
ciantrius

selectを使用する場合は、オプションのインデックスを指定する必要があります。それ以外の場合は text を使用します

$("#comboBox").data("kendoComboBox").text('');

例: http://jsfiddle.net/OnaBai/4aHbH/

19
OnaBai

次のようなKendoUIコントロールを拡張するカスタムクリア関数を作成する必要がありました。

_kendo.ui.ComboBox.fn.clear = kendo.ui.AutoComplete.fn.clear = function () {
    if (!!this.text) {
        this.text("");
    }
    if (!!this.value) {
        this.value(null);
    }
    this._prev = this.oldIndex = this._old = this._last = undefined;
};
_

次に、$("mycontrol").data("kendoAutoComplete").clear();を呼び出してコントロールをクリアし、次の操作を行うときに変更ハンドラーを呼び出すことができます。アイテムを選択し、クリアして前のアイテムを再度選択します。

以下のこれらのオプションは、剣道コンボボックスをリセットするために機能するようです。以下の2つを試した後、$("#comboBox").data("kendoComboBox").select()を実行すると、リセットを示す-1の値が返されるはずです。

$("#comboBox").data("kendoComboBox").value('')
$('#comboBox').data().kendoComboBox.value('')
$("#comboBox").data("kendoComboBox").select(-1)
$('#comboBox').data().kendoComboBox.select(-1)
1
Matthew Ellison

これも機能します:

$("#comboBox").data("kendoComboBox").value(null);
1
doglobster