2013-06-28 11 views
12

Korzystam z ComboBoxów Kendo UI w trybie kaskadowym, aby zbudować filtr, który chcę zastosować.Kendo UI Kombi Box Reset Wartość

Jak wyczyścić/zresetować wartość Kendo UI ComboBox?

Próbowałem:

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

wszystko bezskutecznie. Projekt jest aplikacją MVC4 wykorzystującą silnik Razor, a kod jest w zasadzie taki sam jak kod Kendo UI example.

Odpowiedz

17

Jeśli chcesz użyć select, musisz podać indeks opcji. W przeciwnym razie użyj text

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

Przykład: http://jsfiddle.net/OnaBai/4aHbH/

+0

Dziękuję, dokładnie to, co chciałem. Dziękujemy za poświęcenie dodatkowego czasu na przedstawienie przykładu. – ciantrius

+1

W Kendo ComboBox wpadłem w chaos, w którym czasami przestał poprawnie odpowiadać na ".value (text/value)" i ".select (1)", ale nadal odpowiada na ".text (" xx ') ". (całkowicie normalne wywołania api, które normalnie działają, przestają działać) Ustawiam wartość na wejściu przed stworzeniem widgetu, który zawsze działa. –

+0

To nie działa .. spróbuj tego .. wybierz pierwszą wartość .. i kliknij reset. teraz, ponownie wybierz pierwszą wartość pole kaskady nie wyskakuje –

1

Działa to również:

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

musiałem stworzyć mój własny wyraźną funkcję rozciągający się zaangażować Kendo UI kontroluje tak:

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; 
}; 

Następnie możesz zadzwonić pod numer $("mycontrol").data("kendoAutoComplete").clear();, aby wyczyścić kontrolkę i wywołać procedurę zmiany zmiany, wykonując następujące czynności: wybierz element, wyczyść i wybierz ponownie poprzedni element.

0

Znalazłem poniższe opcje, które wydają się działać, aby zresetować pole kombi kendo. Po wykonaniu dwóch poniższych czynności możesz uruchomić $("#comboBox").data("kendoComboBox").select() i powinieneś zobaczyć wartość zwróconą przez -1, oznaczającą jej zresetowanie.

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