Назначить начальное значение переключателю, как проверено

Как назначить значение переключателя изначально, как указано в HTML?

7 ответов


можно использовать


Вы можете просто использовать:

<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-checked" в " true" например: <input id="d_man" value="M" ng-disabled="some Value" type="radio" ng-checked="true">человек

checked= "checked" не работал для меня..


обратите внимание, что если у вас есть два переключателя с одинаковым атрибутом "name", и у них есть атрибут "required", то добавление атрибута "checked" к ним не сделает их проверенными.

пример: это делает оба переключателя остаются непроверенными.

<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" />

Я немного опоздал на вечеринку, и я знаю, что OP сказал 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