2013-06-28 27 views
12

Tôi đang sử dụng Hộp chứa giao diện người dùng Kendo trong chế độ xếp tầng để tạo bộ lọc mà tôi muốn áp dụng.Hộp kết hợp giao diện người dùng Kendo Giá trị đặt lại

Làm cách nào để xóa/đặt lại giá trị của Hộp kết nối giao diện người dùng Kendo?

Tôi đã thử:

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

tất cả vô ích. Dự án là một ứng dụng MVC4 sử dụng công cụ Razor và mã cơ bản giống như Kendo UI example.

Trả lời

17

Nếu bạn muốn sử dụng select, bạn cần cung cấp chỉ mục của tùy chọn. Nếu không sử dụng text

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

Ví dụ: http://jsfiddle.net/OnaBai/4aHbH/

+0

Cảm ơn bạn, chính xác những gì tôi muốn. Cảm ơn bạn đã dành thêm thời gian để cung cấp ví dụ. – ciantrius

+1

Tôi đã chạy vào bugginess trong ComboBox Kendo, nơi nó đôi khi dừng đáp ứng đúng với ".value (text/value)" và ".select (1)" nhưng nó vẫn đáp ứng với ".text ('xx')". (các cuộc gọi api hoàn toàn bình thường mà thường hoạt động ngừng hoạt động) Tôi đặt giá trị trên đầu vào trước khi xây dựng tiện ích con lúc nào cũng hoạt động. –

+0

Điều này không hoạt động .. hãy thử điều này .. chọn giá trị đầu tiên .. và nhấp vào đặt lại. bây giờ, một lần nữa chọn hộp cascade giá trị đầu tiên không bật lên –

1

này cũng hoạt động:

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

tôi đã phải tạo ra chức năng rõ ràng tùy chỉnh của tôi kéo dài liên quan đến Kendo UI điều khiển như sau:

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

Sau đó, bạn có thể gọi $("mycontrol").data("kendoAutoComplete").clear(); để xóa điều khiển và có trình xử lý thay đổi được gọi khi thực hiện các thao tác sau: chọn một mục, xóa và chọn lại mục trước đó.

0

Tôi đã tìm thấy các tùy chọn bên dưới dường như hoạt động để đặt lại hộp kết hợp kendo. Bạn có thể chạy $("#comboBox").data("kendoComboBox").select() sau khi thử hai bên dưới và bạn sẽ thấy giá trị được trả về -1, cho biết giá trị đặt lại của nó.

$("#comboBox").data("kendoComboBox").value('') 
$('#comboBox').data().kendoComboBox.value('') 
$("#comboBox").data("kendoComboBox").select(-1) 
$('#comboBox').data().kendoComboBox.select(-1) 
Các vấn đề liên quan