3 Stimmen

Html 'Select'-Steuerelement gibt den ausgewählten Index immer als 0 zurück

Ich habe HTML 'Select'-Steuerelement auf aspx Seite platziert und es ist Elemente (Optionen) werden dynamisch mit javasvript geladen. Die Elemente in der Dropdown-Liste erscheinen ordnungsgemäß auf der Webseite. Aber wenn ich ein Element aus der Dropdown-Liste auswähle, wird der ausgewählte Index nicht in der aspx.cs-Datei zurückgegeben. In der Tat, es zeigt ausgewählten Index als 0 und Größe der 'Select' html-Steuerelement als -1. Ich habe die javascript (die Elemente in Dropdown einfügt) in Body-Tag eingefügt. Ich habe auch versucht, durch den Aufruf von Javascript-Funktion auf Body onload. Aber es hat nicht geholfen. Bitte um Rat.

2voto

Jay Allard Punkte 938

Da Sie die Liste über Javascript ausgefüllt haben, befinden sich die Werte nicht im ViewState. Wenn es also zurückkommt, kennt der Code dahinter die Werte in der Liste nicht.

Sie könnten Request.Form["ddWhatever"] verwenden, um den Wert des ausgewählten Elements abzurufen, aber Sie verlieren die serverseitigen Funktionen, wenn Sie sie auf dem Client ausfüllen.

1voto

SiN Punkte 3644

Das ist ein normales Verhalten. Warum binden Sie die Werte nicht auf der Serverseite? Verwenden Sie eine <asp:DropDownList> 代わりに <select> geben Sie ihm eine ID, und füllen Sie es von Ihrem .NET-Code aus, bevor Sie es an den Client zurückgeben (möglicherweise beim Page_Load, und stellen Sie sicher, dass Sie vor dem Binden auf !IsPostBack prüfen)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X