Як призначити спочатку значення перемикача, як перевірено в HTML?
Як призначити спочатку значення перемикача, як перевірено в HTML?
Відповіді:
Ви можете використовувати checked
атрибут для цього:
<input type="radio" checked="checked">
Ви можете просто використовувати:
<input type="radio" checked />
Використання просто перевіреного атрибуту без зазначення значення є таким же, як checked="checked"
.
Я поставив цю відповідь на аналогічне запитання, яке було позначене як дублікат цього питання. Відповідь допомогла пристойній кількості людей, тож я подумав, що додам і сюди про всяк випадок.
Це не точно відповідає на питання, але для тих, хто використовує AngularJS, який намагається цього досягти, відповідь дещо інший. І насправді нормальна відповідь не спрацює (принаймні, це не було для мене).
Ваш html буде схожий на звичайний перемикач:
<input type='radio' name='group' ng-model='mValue' value='first' />First
<input type='radio' name='group' ng-model='mValue' value='second' /> Second
У своєму контролері ви оголосили, mValue
що пов'язано з перемикачами. Щоб одна з цих перемикачів була попередньо обрана, призначіть $scope
змінну, пов’язану з групою, бажаному вхідному значенню:
$scope.mValue="second"
Це робить "другу" перемикач вибраною під час завантаження сторінки.
Для всіх, хто шукає рішення Angular2 (2.4.8), оскільки це загально популярне питання при пошуку:
<div *ngFor="let choice of choices">
<input type="radio" [checked]="choice == defaultChoice">
</div>
Це додасть checked
атрибут до вводу, заданого умовою, але нічого не додасть, якщо умова не виконана.
Не робіть цього:
[attr.checked]="choice == defaultChoice"
тому що це додасть атрибут checked="false"
до кожного іншого вхідного елемента.
Оскільки браузер шукає лише наявність checked
атрибута ( ключа ), ігноруючи його значення, тому останній вхід у групі буде перевірено.
Інший спосіб встановити прапорець, встановлений на радіо-кнопках, особливо якщо ви використовуєте angularjs, це встановити прапор 'ng-check' на "true", наприклад: <input id="d_man" value="M" ng-disabled="some Value" type="radio" ng-checked="true">
Man
check = "перевірено" не працювало для мене ..
ng-checked="true"
- з репертуару angularjs.
Зауважте, що якщо у вас є дві перемикачі з однаковим атрибутом "ім'я", і вони мають "обов'язковий" атрибут, додавання до них атрибута "перевірено" не перевірятиме їх.
Приклад. Завдяки цьому обидва радіо кнопки залишаються відміченими.
<input type="radio" name="gender" value="male" required <?php echo "checked"; ?>/>
<input type="radio" name="gender" value="female" required />
Це зробить перевірену «чоловічу» перемикач.
<input type="radio" name="gender" value="male" <?php echo "checked"; ?>/>
<input type="radio" name="gender" value="female" />
Я трохи спізнився на партію, і я знаю, що ОП сказав html, але якщо вам потрібно було це зробити в MVC, ви можете встановити true
в третьому парамі.
наприклад:
<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
Якщо ви використовуєте react-redux для вашої програми та хочете показати дані, які є в магазині redux, ви можете встановити параметр "перевірено", як показано нижче.
<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"}
/>