#javascript
#javascript
Вопрос:
Я хочу, чтобы кнопка была пассивной.Кнопка должна быть активной при выборе опции. Можно выбрать только один параметр.
<div id="form">
<form action="#" method="post">
<br><br>
<input type="radio" id="terms" name="terms" onchange="on()">option 1.
<br><br>
<input type="radio" id="terms2" name="terms2" onchange="on()">option 2.
<br><br>
<input type="radio" id="terms3" name="terms3" onchange="on()">option 3.
<br><br>
<button type="submit" id="gonder" disabled>Send</button>
</form>
</div>
Ответ №1:
Сохраняйте то же name
самое для всех радиостанций button
, чтобы выбирать по одному за раз.
А также определите onchange
метод.
function on() {
$('#gender').attr('disabled', false);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="form">
<form action="#" method="post">
<br><br>
<input type="radio" id="terms1" name="term" onchange="on()">option 1.
<br><br>
<input type="radio" id="terms2" name="term" onchange="on()">option 2.
<br><br>
<input type="radio" id="terms3" name="term" onchange="on()">option 3.
<br><br>
<button type="submit" id="gender" disabled>Send</button>
</form>
</div>
Ответ №2:
Просто определите функцию go(), как в этом фрагменте.
<div id="form">
<form action="#" method="post">
<br><br>
<input type="radio" id="terms" name="terms" onchange="on()">option 1.
<br><br>
<input type="radio" id="terms2" name="terms2" onchange="on()">option 2.
<br><br>
<input type="radio" id="terms3" name="terms3" onchange="on()">option 3.
<br><br>
<button type="submit" id="gonder" disabled>Send</button>
</form>
</div>
<script>
function on() {
document.getElementById("gonder").removeAttribute("disabled");
}
</script>
Run code snippetHide resultsExpand snippet
Ответ №3:
Попробуйте сделать так:
function on() {
document.getElementById("gonder").removeAttribute("disabled");
}
<div id="form">
<form action="#" method="post">
<br><br>
<input type="radio" id="terms" name="terms" onchange="on()">option 1.
<br><br>
<input type="radio" id="terms2" name="terms" onchange="on()">option 2.
<br><br>
<input type="radio" id="terms3" name="terms" onchange="on()">option 3.
<br><br>
<button type="submit" id="gonder" disabled>Send</button>
</form>
</div>
Чтобы выбрать только одну опцию, все радиовходы должны иметь одно и то же имя. Чтобы включить кнопку отправки при выборе опции, включите ее в событии изменения в JavaScript.
Комментарии:
1. это не означает, что пользователь может выбрать только один вариант.
2. Чтобы это произошло, присвоите переключателю те же имена
3. Спасибо, что указали на это, я обновил ответ, чтобы сделать это сейчас.
Ответ №4:
для @csgoempire
<div id="form">
<form action="#" method="post">
<button id="reselect">
reselect
</button>
<br><br>
<input type="radio" id="terms" name="terms"> option 1.
<br><br>
<input type="radio" id="terms2" name="terms2" >option 2.
<br><br>
<input type="radio" id="terms3" name="terms3" >option 3.
<br><br>
<button type="submit" id="gonder" disabled>Send</button>
</form>
привет, попробуйте этот, который я уже тестировал на jsfiddle
$('input[type="radio"]').on('click',function(){
if(!$('input[type="radio"]').prop('checked')){
$('input[type="radio"]').attr('disabled',true);
};
});
$('#reselect').on('click', function(){
$('input[type="radio"]').attr('disabled',false);
});