Wie ordne ich den Wert eines Optionsfelds zunächst so zu, wie es in HTML aktiviert ist?
Wie ordne ich den Wert eines Optionsfelds zunächst so zu, wie es in HTML aktiviert ist?
Antworten:
Sie können das checked
Attribut dafür verwenden:
<input type="radio" checked="checked">
Sie können einfach verwenden:
<input type="radio" checked />
Die Verwendung nur des überprüften Attributs ohne Angabe eines Werts ist dasselbe wie checked="checked"
.
Ich habe diese Antwort auf eine ähnliche Frage gestellt, die als Duplikat dieser Frage markiert wurde. Die Antwort hat einer anständigen Anzahl von Menschen geholfen, daher dachte ich, ich würde sie auch hier für alle Fälle hinzufügen.
Dies beantwortet die Frage nicht genau, aber für jeden, der AngularJS verwendet, um dies zu erreichen, ist die Antwort etwas anders. Und tatsächlich wird die normale Antwort nicht funktionieren (zumindest nicht für mich).
Ihr HTML-Code sieht dem normalen Optionsfeld ziemlich ähnlich:
<input type='radio' name='group' ng-model='mValue' value='first' />First
<input type='radio' name='group' ng-model='mValue' value='second' /> Second
In Ihrem Controller haben Sie das deklariert, das mValue
den Optionsfeldern zugeordnet ist. Um eines dieser Optionsfelder vorauszuwählen, weisen Sie die $scope
der Gruppe zugeordnete Variable dem Wert des gewünschten Eingangs zu:
$scope.mValue="second"
Dadurch wird das Optionsfeld "Zweiter" beim Laden der Seite ausgewählt.
Für alle, die nach einer Angular2 (2.4.8) -Lösung suchen, da dies eine allgemein beliebte Frage bei der Suche ist:
<div *ngFor="let choice of choices">
<input type="radio" [checked]="choice == defaultChoice">
</div>
Dies wird die hinzufügen checked
Attribut der Eingabe unter der gegebenen Bedingung hinzugefügt, aber nichts hinzugefügt, wenn die Bedingung fehlschlägt.
Mach das nicht :
[attr.checked]="choice == defaultChoice"
weil dies das Attribut checked="false"
zu jedem anderen Eingabeelement hinzufügt .
Da der Browser nur nach dem Vorhandensein des checked
Attributs (des Schlüssels ) sucht und dessen Wert ignoriert, wird die letzte Eingabe in der Gruppe überprüft.
Die andere Möglichkeit, die Standardeinstellung für Optionsfelder festzulegen, insbesondere wenn Sie anglejs verwenden, besteht darin, das Flag 'ng-check' auf "true" zu setzen, z. B.: <input id="d_man" value="M" ng-disabled="some Value" type="radio" ng-checked="true">
Man
das checked = "geprüft" hat bei mir nicht funktioniert ..
ng-checked="true"
ist aus dem Winkelrepertoire.
Beachten Sie, dass wenn Sie zwei Optionsfelder mit demselben Attribut "Name" und dem Attribut "Erforderlich" haben, das Hinzufügen des Attributs "Aktiviert" diese nicht aktiviert.
Beispiel: Dadurch bleiben beide Optionsfelder deaktiviert.
<input type="radio" name="gender" value="male" required <?php echo "checked"; ?>/>
<input type="radio" name="gender" value="female" required />
Dadurch wird das Optionsfeld "männlich" aktiviert.
<input type="radio" name="gender" value="male" <?php echo "checked"; ?>/>
<input type="radio" name="gender" value="female" />
Ich bin ein bisschen spät zur Party und ich weiß, dass das OP HTML sagte, aber wenn Sie dies in MVC tun mussten, können Sie einstellen true
den dritten Parameter festlegen.
z.B:
<p>Option One :@Html.RadioButton("options", "option1", true})</p>
// true will set it checked
<p>Option Two :@Html.RadioButton("options", "option2"})</p>
//nothing will leave it unchecked
Wenn Sie React-Redux für Ihre Anwendung verwenden und Daten anzeigen möchten, die sich im Redux-Speicher befinden, können Sie die Option "Aktiviert" wie folgt festlegen.
<label>Male</label>
<input
type="radio"
name="gender"
defaultChecked={this.props.gender == "0"}
/>
<label>Female</label>
<input
type="radio"
name="gender"
defaultChecked={this.props.gender == "1"}
/>