Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.03.2018, 17:17
Аспирант
Отправить личное сообщение для maksqwerty Посмотреть профиль Найти все сообщения от maksqwerty
 
Регистрация: 03.11.2017
Сообщений: 58

добавить required в зависомости от значения
Собственно, вот:
<form action="#">
<input type="text" id="test">
<input type="text" id="lol1">
<input type="text" id="lol2">
<input type="text" id="lol3">
<input type="submit">
</form>

$(document).ready(function(){
$("#test").change(function(){
var val = $("#test").val();

     if (val <= 100){
$("#lol1").attr('required');
$("#lol2").removeAttr('required');
$("#lol3").removeAttr('required');

      }else if (val > 100 && val <=150){
$("#lol1").attr('required');
$("#lol2").attr('required');
$("#lol3").removeAttr('required');

   }else if (val > 150 && val <=200){
$("#lol1").attr('required');
$("#lol2").attr('required');
$("#lol3").attr('required');

    }else if (val ==""){
$("#lol1").removeAttr('required');
$("#lol2").removeAttr('required');
$("#lol3").removeAttr('required');
}
  });
	});

Как понятно с кода, у меня есть поле test, и туда я буду вписывать цифры, и в зависимости от вписанной цифры одни поля должны быть с required, другие без.
Если в поле test значение пустое, то аттрибут required в полях не нужен.
Код почему-то не работает
(в jsfiddle тестирую)
ЧЯДНТ?

Последний раз редактировалось maksqwerty, 06.03.2018 в 17:39.
Ответить с цитированием
  #2 (permalink)  
Старый 06.03.2018, 17:53
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Почитать тут.
Ответить с цитированием
  #3 (permalink)  
Старый 06.03.2018, 17:56
Аспирант
Отправить личное сообщение для maksqwerty Посмотреть профиль Найти все сообщения от maksqwerty
 
Регистрация: 03.11.2017
Сообщений: 58

Сообщение от laimas Посмотреть сообщение
Почитать тут.
а почему attr не подходит?
(c prop уже пробовал, не вышло тоже)
Ответить с цитированием
  #4 (permalink)  
Старый 06.03.2018, 18:01
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от maksqwerty
а почему attr не подходит?
Потому, что это не атрибут, это свойство. Наглядный пример можно посмотреть со списком. Даже не задавая атрибут selected первой опции, она будет выбрана в списке. Выбор любой опции делает ее выбранной, но никаких атрибутов при этом в них не будет.
Ответить с цитированием
  #5 (permalink)  
Старый 06.03.2018, 18:02
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

$("#lol1").prop('required', true);
$("#lol1").prop('required', false);

так пробовали?
Ответить с цитированием
  #6 (permalink)  
Старый 06.03.2018, 18:10
Аспирант
Отправить личное сообщение для maksqwerty Посмотреть профиль Найти все сообщения от maksqwerty
 
Регистрация: 03.11.2017
Сообщений: 58

https://jsfiddle.net/dj1cm4Lk/
всё-ровно
Ответить с цитированием
  #7 (permalink)  
Старый 06.03.2018, 18:13
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от maksqwerty
всё-ровно
У вас должно быть так

$(selector).prop('required', $(selector).length)

и будут нужный результат.
Ответить с цитированием
  #8 (permalink)  
Старый 06.03.2018, 18:15
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

maksqwerty,
Jquery подключать не пробовали?
Ответить с цитированием
  #9 (permalink)  
Старый 06.03.2018, 18:17
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>
	</style>
	<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
</head>
<body>
	<form action="#">
		<input type="text" id="test">
		<input type="text" id="lol1">
		<input type="text" id="lol2">
		<input type="text" id="lol3">
		<input type="submit">
	</form>

	<script>

		$(document).ready(function(){
			
			$("#test").change(function(){
				var val = $("#test").val();
				if (val <= 100){
					
					$("#lol1").prop('required',true);
					$("#lol2").prop('required',false);
					$("#lol3").prop('required',false);
					
					
				}else if (val > 100 && val <=150){
					
					$("#lol1").prop('required',true);
					$("#lol2").prop('required',true);
					$("#lol3").prop('required',false);
				}else if (val > 150 && val <=200){
					
					$("#lol1").prop('required',true);
					$("#lol2").prop('required',true);
					$("#lol3").prop('required',true);
				}else if (val ==""){
					
					$("#lol1").prop('required',false);
					$("#lol2").prop('required',false);
					$("#lol3").prop('required',false);
				}
			});
		});	


	</script>
</body>
</html>
Ответить с цитированием
  #10 (permalink)  
Старый 06.03.2018, 18:20
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

j0hnik,
ну как не стыдно.

$("#lol1,#lol2,#lol").prop('required',false);
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно добавить новые ключи и значения в многомерный массив wet jQuery 2 11.08.2016 08:49
Помогите к js коду, написать html код Modrih Элементы интерфейса 8 16.06.2015 18:08
Добавить значения из CheckBox в Input tohenson Общие вопросы Javascript 1 18.05.2014 19:09
добавить значения в таблицу nub Общие вопросы Javascript 0 15.12.2013 23:54
Добавить значения из одного списка в другой XAOC Events/DOM/Window 10 28.08.2008 13:18