/ / cancella i pulsanti di opzione quando fai clic sull'inserimento di testo: javascript, jquery, html, moduli, radio

deselezionare i pulsanti di opzione quando si fa clic su input di testo: javascript, jquery, html, moduli, radio

Ho un gruppo di 4 pulsanti di opzione seguiti da un input di testo, quando gli utenti fanno clic sul campo di input di testo Sto provando a cancellare tutti gli input di radio. ecco il mio codice finora.

 <input type="radio" name="radio"><label for="radio1">1</label>
<input type="radio" name="radio"><label for="radio2">2</label>
<input type="radio" name="radio"><label for="radio3">3</label>
<input type="radio" name="radio"><label for="radio4">4</label>
<input type="text" id="textInput">

<script>
$("#textinput").click(function () {
radio.checked = false;
});
</script>

risposte:

2 per risposta № 1
<script>
$("#textInput").click(function () {
$("input[type=radio]").removeAttr("checked");

});
</script>

4 per risposta № 2

Puoi usare .puntello() per impostare la proprietà controllata dei pulsanti di rabio di input. Inoltre hai sbagliato a scrivere textInput mentre associazione di eventi

<script>
$("#textInput").click(function () {
$("input[name="radio"]").prop("checked", false);
});
</script>

DEMO


1 per risposta № 3

Oppure puoi provare il metodo attr ()

 $("#textInput").click(function () {
$("input[name="radio"]").attr("checked",false);

});

DEMO


1 per risposta № 4

Penso che il modo migliore per modificare il tuo blocco di script(senza modificare il tuo html) è innanzitutto assicurando che il codice venga eseguito sul documento pronto, e inoltre dovresti probabilmente assicurarti che l'evento sia attivo, non fare clic, nel caso qualcuno stia usando una tastiera o una navigazione alternativa:

$(function() {
$("#textInput").focus(function () {
$("input[name=radio]").prop("checked", false);
});
});

Anche se è probabilmente più probabile che tu voglia cancellare solo altre selezioni se effettivamente inseriscono alcuni dati in quel campo, potresti invece fare:

$(function() {
$("#textInput").on("input", function () {
if($(this).val().length > 0) {
$("input[name=radio]").prop("checked", false);
}
});
});