DropDownList gibt kein Postback für SelectedIndexChanged zurück

8

Ich schreibe ein ASP.Net-Webformular mit einigen DropDownList-Steuerelementen darauf. Dann ändert der Benutzer das ausgewählte Element in einem der Dropdown-Menüs. ASP.Net scheint das SelectedIndexChanged-Ereignis nicht zu verarbeiten, bis das Formular mit einem Klick auf "Senden" gesendet wird. Wie mache ich meine Drop-Downs mit SelectedIndexChanged sofort fertig?

P.S. Es ist eine klassische Frage, die ich zu oft beantwortet habe, aber es scheint, dass niemand sie vorher auf Stackoverflow gefragt hat.

    
Sergey Volegov 16.09.2008, 07:38
quelle

4 Antworten

23

AutoPostback > Eigenschaft auf true bewirkt, dass das Postback erfolgt, wenn die Auswahl geändert wird. Bitte beachten Sie, dass hierzu Javascript aktiviert sein muss.

    
Richard Szalay 16.09.2008, 07:40
quelle
10

Sie müssen die Eigenschaft AutoPostBack der Liste auf true setzen.

Wenn Sie den Inhalt der Dropdown-Liste auch aus dem dahinter liegenden Code auffüllen (z. B. den Inhalt der Liste aus einer Datenbank abrufen), stellen Sie sicher, dass Sie die Daten nicht in jedem Postback neu binden .

Manchmal werden Leute erwischt, indem sie das Dropdown-Menü im Seitenladeereignis binden, ohne es in ein If Not IsPostBack zu setzen. Dadurch wird das Ereignis nicht ausgelöst.

Das Gleiche gilt auch für Repeater und ItemCommand -Ereignisse.

    
Chris Roberts 16.09.2008 07:46
quelle
4

Wenn Sie die Dropdown-Liste während des Ladens der Seite füllen, wird die Liste bei jedem Seiten-Postback erneut geladen, wodurch die Postback-Methode aufgehoben wird. Sie müssen sicherstellen, dass die Dropdown-Liste nur geladen wird, wenn (! ispostback)

    
Dave 05.10.2011 21:30
quelle
3

Setzen Sie die AutoPostBack-Eigenschaft von DropDownList auf true.

    
Haacked 16.09.2008 07:41
quelle

Tags und Links