Ich entwickle eine sehr einfache Dateneingabeanwendung (im Bootstrap) mit ASP.net und VB.Net als Code hinter Visual Studio 2012 Web.Request.Form funktioniert nur auf Namens-Tags?
Nehmen wir an, ich die folgende html haben die Vorname zu erhalten:
<form id="form1" runat="server">
<div style="padding:20px">
<div class="form-group">
<label for="firstname">Firstname</label>
<input type="text" class="form-control" id="firstname" name="firstname" placeholder="" style="max-width:450px" maxlength="60" />
<small class="text-muted">Enter your first name.</small>
</div>
<button runat="server" type="submit" class="btn btn-primary" onserverclick="btnSubmit_ServerClick" >Submit</button>
</div>
</form>
und den entsprechenden Code hinter seinen Wert zu handhaben:
Protected Sub btnSubmit_ServerClick(sender As Object, e As EventArgs)
Dim fname As String = Request.Form("firstname").ToString
End Sub
Nehmen wir an, ich will nicht runat="server"
verwenden in meinem HTML-Vorname-Feld. Ich sehe, dass funktioniert nur, wenn ich das Tag name="firstname"
gesetzt habe. Wenn ich nur das id
Tag (und nicht das name
Tag) gesetzt habe, berücksichtigt es das nicht; in meinem Fall, wenn ich nur <input type="text" class="form-control" id="firstname" placeholder="" style="max-width:450px" maxlength="60" />
die Request.Form("firstname")
auf meiner Serverseite habe, gibt NULL zurück.
Ich versuche auch Request.Form
ohne Glück. Ich sehe, dass die Sammlung NameValueCollection
von Komponenten gefüllt wird, die nur das name
-Tag festgelegt haben.
Und meine Frage ist, ist es möglich, meinen Server-Code zu ändern, um mit HTML-Komponenten arbeiten, die sie nur ihre ID festgelegt haben?
Ich würde empfehlen, zu verwenden [Serversteuer] (https://msdn.microsoft.com/en-us/library/zsyt68f1.aspx) (Textfeld, Schaltfläche, etc.) so dass Sie stark auf ihre Werte zugreifen können. –
Nein, über die Anfragen erhalten Sie nur Namevalue-Paare, die ID ist nicht etwas, das an den Server gesendet wird – Icepickle
@UweKeim Vielen Dank für Ihren Vorschlag. Ich stimme zu, aber meine Frage ist nur für Wissenszwecke, gewährt, dass wir bestehenden Code mit Hunderten von HTML-Feldern auf diese Weise festgelegt haben. –