Kann eine RadListView-Datenquelle mit Ajax gebunden/neu gebunden werden? Was ich versuche, ist eine Art Forum zu erstellen. Ein ListView ist in einem anderen Listenansicht verschachtelt. Die äußere Listenansicht wird beim Laden der Seite geladen und zeigt alle Betreff-Header an, und die Ansicht der inneren Liste wird erst dann gebunden, wenn auf die Überschrift geklickt wird. Dann werde ich jQuery verwenden, um die Details unter der Überschrift zu öffnen, und lade THAT ListView mit ajax. ist das möglich und wie? Oder gibt es einen anderen Weg, diesen Effekt zu erreichen? Vielen Dank.Verwenden Sie Ajax zum Binden/Rebind einer Listview-Datenquelle?
Antwort
Sie können die äußere Liste in eine UpdatePanel
umbrechen und einen OnClick
Handler der Betreffzeile zuweisen. Wenn auf die Betreffzeile geklickt wird, wird ein asynchrones Postback ausgeführt, und Sie können die innere Liste im Click-Ereignishandler binden.
Auf die eine oder andere Weise müssen Sie zum Code-Behind gelangen. Wenn Sie jQuery verwenden möchten, können Sie Ereignisse anhängen an den Header klicken und rufen __doPostBack im Handler, wie folgt aus:
$("#<%=ListView1.ClientID%> .header").click(function(){
__doPostBack($(this).attr("id"), "");
});
Wenn Sie mit diesem Ansatz gehen, werden Sie nur die RaisePostBackEvent
in der außer Kraft setzen müssen Code-Behind, und verwenden Sie ein wenig Logik, um in die innere Liste zu bohren.
Der einfache Weg, wenn Sie ein PostBack nicht tun, wäre, verschachtelte ListViews zu verdrahten, und den Header-Hook zum ItemCommand-Ereignis und binden Sie die entsprechende RadListView, die Sie brauchen, und andere ausblenden. Sie könnten den ViewState für diese Steuerelemente möglicherweise deaktivieren, um die Größe zu verringern, da Sie nur die aktuell ausgewählten Elemente ListView anzeigen würden, wenn Sie keine Paging- oder Sortiervorgänge durchführen.
Für eine schnellere Postbacks können Sie auf Client-Seite Databinding für RadListView loook
http://demos.telerik.com/aspnet-ajax/listview/examples/client/programmaticdatabinding/defaultcs.aspx
Sie würden eine Funktion erzeugen, dass Sie die Listview die ClientID senden kann, sowie die Außen div DataBind (wenn Sie muss man) beim Anklicken der Kopfzeile anzeigen.
Die Funktion würde dann das ListView finden, den äußeren Container anzeigen und es mit Daten verknüpfen. Sie könnten möglicherweise auch Code einschließen, der das gegenwärtig sichtbare div zusammenfalten würde, wenn Sie diese Funktionalität wünschen. Eine globale Variable, die die ID des vorherigen Div speichert, wäre ein einfacher Weg, um zu arbeiten.
- 1. Verwenden Sie jQuery zum Senden von Excel-Daten mit AJAX
- 2. Verwenden von jquery/ajax/webmethod zum Aktualisieren einer Listbox
- 3. Verwenden von jquery ajax zum Herunterladen einer Binärdatei
- 4. Verwenden von Ajax zum Hochladen von Datei
- 5. Laravel verwenden AJAX zum Anhängen Ansicht
- 6. Verwenden von Ajax zum Aktualisieren der Liste.
- 7. Verwenden Sie Ajax in Schienen
- 8. Verwenden Sie ... zum Ändern einer verschachtelten Liste innerhalb einer Funktion
- 9. Verwenden Sie AJAX, um nach einer neuen Nachricht zu suchen
- 10. Verwenden Sie Windows-Authentifizierung mit ASP.Net AJAX
- 11. Verwenden Sie jQuery zum Navigieren von Seite
- 12. Verwenden Sie SyntaxNet zum Chunking?
- 13. Verwenden von AJAX zum Zurücksenden von SelectList-Wert
- 14. Verwenden einer Teilansicht zum Darstellen einer Tabellenzeile
- 15. Verwenden einer Zeichnungsbibliothek zum Erstellen einer GUI
- 16. So verwenden Sie jQuery .live() mit AJAX
- 17. So verwenden Sie AJAX in Kontaktformular
- 18. So verwenden Sie POI SXSSF zum Lesen einer großen Tabelle
- 19. Verwenden Sie C# Expression Evaluator zum Filtern einer Liste
- 20. So verwenden Sie NHibernate Projektionen zum Abrufen einer Sammlung
- 21. So verwenden Sie Hudson zum Verfolgen einer einzelnen Metrik
- 22. Verwenden Sie JQuery zum Aufrufen einer ASP: LinkButton Klickfunktion
- 23. So verwenden Sie QSettings zum Speichern einer Variablen
- 24. Verwenden von jQuery zum Suchen einer Teilzeichenfolge
- 25. Verwenden der JQuery Ajax-Funktion zum Zurückgeben von 2 Datensätzen
- 26. Verwenden von Ajax in Wordpress zum Senden von E-Mails
- 27. Ajax Control Toolkit - Verwenden Sie die clientseitige Schaltfläche zum Aktivieren der Registerkarte
- 28. Verwenden Sie SwiftyJSON zum Deserialisieren von NSDate
- 29. Verwenden von SqlDataAdapter zum Einfügen einer Zeile
- 30. Verwenden von Protobuf zum Verarbeiten einer Konfigurationsdatei