Verweis auf einen Steuerelement-ID erstellt, die mit TextBoxFor()
Ich bin lieben ASP.NET MVC, halten mit den releases/docs können manchmal tückisch sein, also vielleicht bin ich nur nicht immer so... ich möchte an einem TextBoxFor(), und arbeiten mit LabelFor() etc. ist in Ordnung, alle die Magie passiert für mich.
Aber wenn ich erstellen...
<%=Html.TextBoxFor(x => x.LastName) %>
Und wollte etwas tun, um schön mit jQuery, wie kann ich die ID des Steuerelements, das erstellt wurde? Ich könnte hinzufügen einer CSS-Klasse, und verwenden, befestigen Sie meine jQuery, aber für etwas, das ich Tue, möchte ich die ID... also ich könnte so etwas machen:
$('#LastName').(...)
Ich weiß, ich könnte es in diesem Fall, und hack es in manuell, aber es ist ein ordentlicher Weg?
- Funktioniert das nicht? Wenn ich versuche, scheint es, die zum generieren der ID als würde ich erwarten, dass es benannt werden. Beim anzeigen der HTML-Quelltext auf der Seite, was ist Ihre
TextBoxFor()
ausgeben? - Dieser macht seine Arbeit und generiert die ID, die Sie erwarten würden, aber ich denke, wenn der Rahmen es sich erarbeiten für Sie ein Textfeld, und es würde in der Lage sein, um es in anderen Orten... Besonders nützlich, wenn die ID wird generiert, um ein array, so dass Sie am Ende mit einer ID wie "Webseiten_0__Url". Der manuelle Weg funktioniert, ich denke nur, MVC müssen das wissen für mich und spart mir Fehler zu machen 😉
Du musst angemeldet sein, um einen Kommentar abzugeben.
Seit MVC4-es ist eine built-in Möglichkeit, es zu tun - @Html.IdFor().
Hier ist ein Beispiel der Verwendung:
und das Ergebnis ist, wie
Ich denke, man kann so etwas wie:
Überlastungen TextBoxFor
Als ein Punkt von Interesse, es scheint, dass die Html.Textbox () - code generiert eine id, duplizieren, den Namen des Steuerelements für alles, was beginnt mit einem Buchstaben (a-z). Wenn allerdings die "name" mit einer Zahl beginnt, wird es einfach nicht stören.
Dies ist eine fantastische "feature", dass hat mich veranlasst, mich der Trauer um die vergangene Stunde oder so.
Standardmäßig Ihre control-id ist Ihr Modell verbindlichen Wert, Sie können auch Einfach firebug verwenden. wählen Sie das Steuerelement aus, und bekommen von Standard-Steuerelement-id.