我正在使用kendo自动完成,因为我将数据远程绑定到数据源。每当我将数据绑定到kendo数据源时,它都不会清除或刷新数据源中的旧数据。以下是我正在使用的代码
$("#input3").kendoAutoComplete
({
dataSource:new kendo.data.DataSource({
cache: false,
read:getPackage(document.getElementById('input3').value),
data:pkg
}),
select: function(e) {
var dataItem = this.dataItem(e.item.index());
},
filter: "startswith",
placeholder: "Select Package..."
});
function getPackage(req)
{
$.ajax
({
url: 'BookingCity.asmx/GetAllCountryforPackage',
contentType: 'application/json; charset=utf-8',
type: 'POST',
dataType: 'json',
async: false,
cache: false,
data:"{'prefixText':'"+ req +"','id':'" + document.getElementById('cityName2').value+ "'}",
success: function(response) {
pkg=response.d
},
error: function(xhr, status) {
alert(status)
}
});//ajax
}
有人能告诉我如何清除该数据源中的旧数据的解决方案。
答案 0 :(得分:3)
DataSource的data方法可用于设置数据。要使其为空,您需要传递一个空的JavaScript数组:
var autoComplete = $("#input3").data("kendoAutoComplete");
autoComplete.dataSource.data([]);