Como atribuir o valor de um botão de opção inicialmente como verificado no HTML?
Como atribuir o valor de um botão de opção inicialmente como verificado no HTML?
Respostas:
Você pode usar o checked
atributo para isso:
<input type="radio" checked="checked">
Você pode apenas usar:
<input type="radio" checked />
Usar apenas o atributo verificado sem indicar um valor é o mesmo que checked="checked"
.
Eu coloquei esta resposta em uma pergunta semelhante que foi marcada como uma duplicata desta pergunta. A resposta ajudou uma quantidade razoável de pessoas, então pensei em adicioná-la aqui também por precaução.
Isso não responde exatamente à pergunta, mas para quem usa o AngularJS tentando fazer isso, a resposta é um pouco diferente. E, na verdade, a resposta normal não funcionará (pelo menos não funcionou para mim).
Seu html será bem parecido com o botão de opção normal:
<input type='radio' name='group' ng-model='mValue' value='first' />First
<input type='radio' name='group' ng-model='mValue' value='second' /> Second
No seu controlador, você terá declarado o mValue
que está associado aos botões de opção. Para ter um desses botões de opção pré-selecionados, atribua a $scope
variável associada ao grupo ao valor da entrada desejada:
$scope.mValue="second"
Isso faz com que o "segundo" botão de opção seja selecionado ao carregar a página.
Para quem procura uma solução Angular2 (2.4.8), pois essa é uma pergunta genericamente popular ao pesquisar:
<div *ngFor="let choice of choices">
<input type="radio" [checked]="choice == defaultChoice">
</div>
Isso adicionará o checked
atributo à entrada dada a condição, mas não adicionará nada se a condição falhar.
Não faça isso:
[attr.checked]="choice == defaultChoice"
porque isso adicionará o atributo checked="false"
a todos os outros elementos de entrada.
Como o navegador procura apenas a presença do checked
atributo (a chave ), ignorando seu valor, a última entrada no grupo será verificada.
A outra maneira de definir os botões de opção padrão marcados nos botões de opção, especialmente se você estiver usando o angularjs, é definir o sinalizador 'ng-selected' como "true", por exemplo: <input id="d_man" value="M" ng-disabled="some Value" type="radio" ng-checked="true">
Man
o verificado = "verificado" não funcionou para mim ..
ng-checked="true"
é do repertório angularjs.
Observe que, se você tiver dois botões de opção com o mesmo atributo "nome" e eles tiverem o atributo "obrigatório", a adição do atributo "marcado" a eles não fará com que sejam verificados.
Exemplo: Isso faz com que os dois botões de opção permaneçam desmarcados.
<input type="radio" name="gender" value="male" required <?php echo "checked"; ?>/>
<input type="radio" name="gender" value="female" required />
Isso fará com que o botão de opção "masculino" seja marcado.
<input type="radio" name="gender" value="male" <?php echo "checked"; ?>/>
<input type="radio" name="gender" value="female" />
Estou um pouco atrasado para a festa e sei que o OP disse html, mas se você precisar fazer isso no MVC, poderá definir true
o terceiro parâmetro.
por exemplo:
<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
Se você estiver usando o react-redux para seu aplicativo e se desejar mostrar dados que estão no repositório redux, você pode definir a opção "marcada" como abaixo.
<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"}
/>