Создать условие в форме запроса с помощью jquery. А именно флагов?

Здравствуйте, подскажите пожалуйста где ошибка? Решил наложить на форму отправки проверку. Нужно чтобы пользователь прежде чем отправил значение установил два флага, они из разных групп.
Я вот так написал:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js">
		function checkParams() {
		    var reg_status1 = $('#reg_status1').val();
		    var reg_status2 = $('#reg_status2').val();
		    var uslovie = $('#uslovie').val();
     
		    if(reg_status1 == "on" && uslovie == "on") {
		        $('#submit_r').removeAttr('disabled');
		    }
                   if(reg_status2 == "on" && uslovie == "on") {
		        $('#submit_r').removeAttr('disabled');
		    }
		   else {
		        $('#submit_r').attr('disabled', 'disabled');
		    }
		} </script>

Получил в итоге блокировку кнопки но она становится активной даже если выполнено одно условие. Т. е. если нажат хоть один из этих флагов. Хотя в условии я написал что должно быть два параметра указанно. Если флаг активен то он ведь передает значение "on" или же лучше в условие написать !="NULL"
Вот как прописаны флаги и кнопка:
<input type="radio" name="popup-register-status" id="reg_status1" onkeyup="checkParams()"/>
<input type="radio" name="popup-register-status" id="reg_status2" onkeyup="checkParams()"/>
<input type="radio" id="uslovie" onkeyup="checkParams() name="popup-soglasie-status" />	
<input type="submit" name="submit" id="submit_r" value="Выполнить">
  • Вопрос задан
  • 243 просмотра
Пригласить эксперта
Ответы на вопрос 3
@s-jet
Коду наплодили-то))) Лучше использовать элементарную проверку состояния чекбоксов
https://jsfiddle.net/sofkf1w2/2/
И откажитесь навсегда от запуска скриптов в теле html, просто забудьте
Ответ написан
@sobesednict Автор вопроса
Потому что попросили сделать проверку ввода данных. А эту комбинацию я решил использовать потому что есть в этом необходимость. И то что вы написали разве не скрипт? Тоже скрипт. Я вас попросил указать на ошибку в моем коде чтоб на будущее знал. За советы спасибо учту.
Ответ написан
@kttotto
пофиг на чем писать
По сути, условие первого чекбокса никогда не заблокирует кнопку, только разблокирует. Допустим, Вы сняли галочку с первого чекбокса и поставили галочку на втором чекбоксе - кнопка разблокируется.
Вам нужно нормально проверку условия сделать, при такой Вашей проверке кнопка мигать будет дизейблить-раздизейблить.
if(reg_status1 == "on" && reg_status2 == "on" && uslovie == "on") {
	$('#submit_r').removeAttr('disabled');
}
else {
	$('#submit_r').attr('disabled', 'disabled');
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы