Başlangıçta HTML'de işaretli olarak bir radyo düğmesinin değerini nasıl atayabilirim?
Başlangıçta HTML'de işaretli olarak bir radyo düğmesinin değerini nasıl atayabilirim?
Yanıtlar:
Bunun için checked
özniteliği kullanabilirsiniz :
<input type="radio" checked="checked">
Sadece şunu kullanabilirsiniz:
<input type="radio" checked />
Yalnızca bir değer belirtmeden kontrol edilen özniteliğin kullanılması ile aynıdır checked="checked"
.
Bu cevabı, bu sorunun kopyası olarak işaretlenmiş benzer bir soruya verdim. Cevap iyi bir insana yardımcı oldu, bu yüzden her ihtimale karşı buraya da ekleyeceğimi düşündüm.
Bu soruya tam olarak cevap vermiyor, ancak AngularJS kullanan herkes için bunu başarmaya çalışan cevap biraz farklı. Ve aslında normal cevap işe yaramaz (en azından benim için işe yaramadı).
Html'niz normal radyo düğmesine oldukça benzeyecektir:
<input type='radio' name='group' ng-model='mValue' value='first' />First
<input type='radio' name='group' ng-model='mValue' value='second' /> Second
Kumandanızda mValue
bunun radyo düğmeleriyle ilişkili olduğunu bildirmiş olacaksınız . Bu radyo düğmelerinden birinin önceden seçilmesini $scope
sağlamak için, grupla ilişkili değişkeni istenen girişin değerine atayın :
$scope.mValue="second"
Bu, sayfa yüklenirken "ikinci" radyo düğmesini seçili hale getirir.
Angular2 (2.4.8) çözümü arayan herkes için, çünkü bu arama yaparken genel olarak popüler bir soru:
<div *ngFor="let choice of choices">
<input type="radio" [checked]="choice == defaultChoice">
</div>
Bu checked
, koşul verilen girişe özniteliği ekler , ancak koşul başarısız olursa hiçbir şey eklemez.
Bunu yapma:
[attr.checked]="choice == defaultChoice"
çünkü bu özelliği checked="false"
diğer tüm girdi öğelerine ekleyecektir .
Tarayıcı yalnızca checked
özelliğin ( anahtarın ) varlığını aradığından, değerini yoksayarak gruptaki son girdi kontrol edilir.
Radyo düğmelerini varsayılan işaretli olarak ayarlamanın diğer bir yolu, özellikle de açısaljs kullanıyorsanız, 'ng işaretli' bayrağı "true" olarak ayarlamaktır örn .: <input id="d_man" value="M" ng-disabled="some Value" type="radio" ng-checked="true">
Man
işaretli = "işaretli" benim için çalışmadı ..
ng-checked="true"
angularjs repertuarındandır.
Aynı "ad" özniteliğine sahip iki radyo düğmeniz varsa ve "zorunlu" özniteliğine sahipseniz, bunlara "işaretli" öznitelik eklediğinizde onları işaretlemezsiniz.
Örnek: Bu, her iki radyo düğmesinin işaretsiz kalmasını sağlar.
<input type="radio" name="gender" value="male" required <?php echo "checked"; ?>/>
<input type="radio" name="gender" value="female" required />
Bu "erkek" radyo düğmesini işaretli yapar.
<input type="radio" name="gender" value="male" <?php echo "checked"; ?>/>
<input type="radio" name="gender" value="female" />
Partiye biraz geç kaldım ve OP html dediğini biliyorum, ancak MVC'de bunu yapmanız gerekiyorsa true
üçüncü parametrede ayarlayabilirsiniz .
Örneğin:
<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
Uygulamanız için tepki-redux kullanıyorsanız ve redux deposundaki verileri göstermek istiyorsanız, "işaretli" seçeneğini aşağıdaki gibi ayarlayabilirsiniz.
<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"}
/>