Eingabekästchen wahr oder aktiviert oder ja [duplicate]

Lesezeit: 3 Minuten

Benutzer-Avatar
Benutzer1032531

Ich habe die drei Implementierungen der Vorauswahl eines Kontrollkästchens gesehen. Ich begann mit der Verwendung von “checked=”checked”, weil ich dachte, dass dies der “richtige” Weg sei (das “checked”=”yes” mochte ich jedoch nie). Ich denke darüber nach, zu “checked=”true”” zu wechseln, da es lesbarer erscheint und das JavaScript einfacher zu codieren ist. Beachten Sie, dass dieselbe Frage auch für andere Attribute gilt, z. B. „deaktiviert“ = „deaktiviert“ im Vergleich zu „deaktiviert“ = „true“. Solange ich konsequent bin, ist die Verwendung von “true” der bevorzugte Ansatz? Vielen Dank

<input type="checkbox" checked="checked" value="123" name="howdy" />
<input type="checkbox" checked="true"    value="123" name="howdy" />
<input type="checkbox" checked="yes"     value="123" name="howdy" />

  • Was ist mit $(‘eingabe[name=foo]’).attr(‘checked’, true);? Sollte es wirklich $(‘input[name=foo]’).attr(‘geprüft’, ‘geprüft’)?

    – Benutzer1032531

    31. Mai 2012 um 12:08 Uhr

Nur checked und checked="checked" sind gültig. Ihre anderen Optionen hängen von der Fehlerbehebung in Browsern ab.

checked="yes" und checked="true" sind besonders schlimm, da sie das implizieren checked="no" und checked="false" setzt den Standardzustand auf sein ungeprüft … was sie nicht tun werden.

  • HTML 5-Spezifikation.

    – Felix Klinge

    31. Mai 2012 um 11:29 Uhr

  • Entschuldigung, wollte es hier hinzufügen … Was ist mit $(‘input[name=foo]’).attr(‘checked’, true);? Sollte es wirklich $(‘input[name=foo]’).attr(‘geprüft’, ‘geprüft’)?

    – Benutzer1032531

    31. Mai 2012 um 12:09 Uhr

  • Es sollte sein jQuery(selector).prop('checked', true); (attr widersprüchlich, wie es mit dem Attribut „checked“ umgeht, sollte also um des Gehirns der Betreuer willen vermieden werden).

    – QUentin

    31. Mai 2012 um 12:12 Uhr


  • Wirklich, checked="checked" sieht genauso schlimm aus, wie es das implizieren könnte checked="not-checked", oder eine Ableitung von gleich impliziert ungeprüft. Es ist wirklich ein Set/Notset-Problem.

    – Benutzer1032531

    5. Januar 2017 um 2:39 Uhr

Benutzer-Avatar
Flavio Cysne

Laut W3C Das Attribut der geprüften Eingabe kann fehlen/weggelassen werden oder „geprüft“ als Wert haben. Andere Werte werden dadurch nicht ungültig, da es keine Einschränkung für die Browserimplementierung gibt, um Werte wie „true“, „on“, „yes“ usw. zuzulassen. Um sicherzustellen, dass Sie ein browserübergreifendes Kontrollkästchen/Radio schreiben, verwenden Sie checked=”checked”, wie von empfohlen W3C.

die Attribute disabled, readonly und ismap input gehen auf die gleiche Weise.

BEARBEITET

empty ist kein gültiger Wert für die Attribute der Eingabe “checked”, “disabled”, “readonly” und “ismap”, wie von @Quentin gewarnt

  • Nein. Es besagt, dass das Attribut „checked“ weggelassen werden kann oder den Wert „checked“ haben kann. Das macht jeden anderen Wert ungültig (HTML lässt Sie nur Dinge verwenden, die erlaubt sind, es lässt Sie nicht alles verwenden, was nicht verboten ist). Da es sich um ein boolesches Attribut handelt, können Sie alles weglassen außer den Wert, während das Attribut vorhanden ist. dh gegeben checked="checked" Sie können die ersten 9 Zeichen und das letzte Zeichen übernehmen).

    – QUentin

    31. Mai 2012 um 12:22 Uhr


  • Ich sagte, dass dies andere Werte nicht ungültig macht Browser könnten ihre Methode zum Parsen von HTML nach Belieben implementieren, da sie ein ommited/absent-checked-Attribut oder checked=”checked” als akzeptieren empfohlen von W3C. Ich akzeptiere die Verneinung, weil „leer“ kein gültiger Wert ist, aber alles andere gilt trotzdem.

    – Flavio Cysne

    31. Mai 2012 um 12:41 Uhr

1158790cookie-checkEingabekästchen wahr oder aktiviert oder ja [duplicate]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy