0

データをデータソースにリモートでバインドしているという点で、剣道オートコンプリートを使用しています。データを剣道データソースにバインドするたびに、データソース内の古いデータがクリアまたはフラッシュされません。以下は私が使用しているコードです

$("#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
} 

そのデータソースの古いデータをクリアするにはどうすればよいかという解決策を誰か教えてもらえますか?

4

1 に答える 1

3

DataSourceのdataメソッドを使用して、データを設定できます。空にするには、空の JavaScript 配列を渡す必要があります。

var autoComplete = $("#input3").data("kendoAutoComplete");
autoComplete.dataSource.data([]);
于 2013-02-26T19:01:03.640 に答える