7 Stimmen

Können Sie leere HTML-Attribute Syntax in MVC-Helfer angeben?

Ich bin neugierig... können Sie ein HTML-Attribut angeben, das leer oder wertlos ist? Die W3-Spezifikation erlaubt die Angabe von leere Attribute etwa so: <input type="checkbox" disabled checked>

Und mit MVC, deklarieren Sie Eingaben wie diese: Html.CheckBoxFor(m=>m.Foo) . Sie können Html-Attribute mit dem Html.CheckBoxFor(m=>m.Foo, new {@class="myCssClass"}) Syntax, aber Sie können nicht Html.CheckBoxFor(m=>m.Foo, new { disabled, checked})

Ich weiß, dass die Spezifikation auch Selbstwertattribute für diese Arten zulässt (z. B. new {disabled="disabled"} ) und leere Zeichenkettenwerte (z. B. new {disabled=""} ).

Ich bin nur neugierig, ob es eine Möglichkeit gibt, die leere Syntax anzugeben.

2voto

Evan Punkte 370

Spät zur Party, aber ... dies von w3schools:

"In XHTML ist die Minimierung von Attributen verboten, und das Attribut disabled muss wie folgt definiert werden: select disabled="disabled".

Versuchen Sie also gar nicht erst, die Attributminimierung zu verwenden, um die Vorschriften einzuhalten? Aber es scheint, dass die HTML-Helfer dies ohnehin nicht zulassen.

http://www.w3schools.com/tags/att_select_disabled.asp

1voto

Darin Dimitrov Punkte 990883

Nein, die Standard-HTML-Helfer unterstützen dies nicht. Sie könnten eine benutzerdefinierte HTML-Hilfe schreiben und das Markup selbst erstellen.

1voto

Alex from Jitbit Punkte 44084

Ja, das können Sie. Stellen Sie es auf string.Empty und MVC5 wird ein leeres Attribut darstellen.

new { disabled = string.Empty }

Und ja, die HTML5-Spezifikation erlaubt leere Attribute perfekt. XHTML ist veraltet.

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