2012-08-26 7 views
8

Sto cercando di aggiornare l'elenco a discesa dopo un altro DropDownList è Cambia ma il metodo Refresh() è indefinito Errore è di promozione.Perché ho cercato di leggere il DataSource di nuovo e mostra il caricamento, ma i dati sono sempre gli stessi.Aiuta a risolvere questo problema per favore.Aggiornamento Kendo (DropDownList.refresh()) non funzionante ERRORE Non definito

Codice:

$("#DropDownList1").change(function() { 
    custCode = $("#DropDownList1").val(); 

    $("#titles").data("kendoDropDownList").dataSource.read(); //shows list Loading But Same Data Is present . 
    $("#titles").data("kendoDropDownList").refresh(); //NOT Working 

}); 

risposta

17

1- Prova ad aggiungere cache: false per disabilitare la cache di proprietà di lettura origine dati di Kendo DropDownList:

read: { 
    url: <<"url">>, 
    cache: false 
} 

2- quindi chiamare read(),

$("#ddl").data("kendoDropDownList").dataSource.read(); 

E ' ha funzionato per me :)

+0

Salve, non funziona per me.I miei dati arrivano il problema è che kendoDropDownList mostra i vecchi dati e il metodo di aggiornamento non definito per qualche motivo. – cwishva

+0

Nota: La mia casella di riepilogo non è occupata da una lettura. è riempito da un carico di forma. – cwishva

+0

Mi dispiace qualcosa di sbagliato con il mio codice: P – cwishva

4

Per me solo questa linea ha fatto il lavoro:

$("#myDropDownList").data("kendoDropDownList").dataSource.read();

1

si potrebbe trovare passando i parametri al ".data()" del dataSource utile.

Esempio:

var myDataSource={bookId: 10, Name: "Kendo"} 
$("#titles").data("kendoDropDownList").dataSource.data(myDataSource); 

Tuttavia, si potrebbe anche provare l'attributo cascadingFrom del DropDownList quando si desidera aggiornare una DropDownList basato sulla selezione di un altro DropDownList

// Houdini

0

nella tua url di lettura aggiungi "? myDate = '+ new Date(). Questo aggiornerà i dati. Senza di esso (a meno che tu non abbia metatag per impedire il caching) ti darà quei dati che ha già letto.