Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.11.2016, 16:01
Новичок на форуме
Отправить личное сообщение для SpaTen Посмотреть профиль Найти все сообщения от SpaTen
 
Регистрация: 08.11.2016
Сообщений: 6

Не могу понять в jQuery Validation Plugin
Ребят, проблема такая есть форма, рядом с ней есть иконка крестика. На форме есть имя у кого прописано условие в js, мне надо что если условие верное рядом картинка менялось на другую. Я не силен в Js и прошу помощи.
Вот пример кодов:
<form id="z16" method="post" action="" style="display:block;">
    <label>Пожалуйста, заполните обязательные поля.</label>	
	<br>
	<ul>
		<li>
			<div class="lable_block"><label for="login_name">Имя:</label></div>
			<input type="text" id="login_name" name="login_name" size="20" minlength="3" required
                   data-msg-required="Введите Имя" data-msg-minlength="Имя должно иметь минимум 3 символа" aria-required="true" aria-invalid="true">
			<div class="img_z16 img_z16_mandatory"></div>


		</li>
		<li>
			<div class="lable_block"><label for="Ege_name">Возраст:</label></div>
			<input type="number" size="1"  min="1" max="99" value="1" style="width:35px;">
			<div class="img_z16 img_z16_check"></div>
		</li>
		<li>
			<div class="lable_block"><label for="login_email">E-mail:</label></div>
			 <input type="email" id="login_email" name="login_email" size="20" required
                   data-msg-required="Вы забыли написать свой email"
                   data-msg-email="Обязательно нужно написать @ и .!!!" aria-required="true" aria-invalid="true">
			<div class="img_z16 img_z16_mandatory"></div>
		</li>
		<li>
			<div class="lable_block"><label for="Sit_name">Сайт:</label></div>
			<input type="text" name="name" size="20">
			<div class="img_z16 img_z16_check"></div>
		</li>
		<li>
			<input class="submit_z16" type="submit" value="Отправить">
		</li>
	</ul>


</form>

.z16{
	width: 700px;
height: 300px;
margin-left: 20px;
}
.z16 label{
padding: 10px;
    padding-left: 0;
}
.lable_block{
	    width: 100px;
    display: inline-block;
}
.z16 ul li{
	list-style: none;
	padding: 10px 0px 10px 0px;
}
.z16 ul li input{

}
.img_z16{
	width: 18px;
	height: 18px;
	vertical-align: middle;
	text-align: center;
	display: inline-block;
	    background-repeat: no-repeat;
	    background-size: cover;
}
.img_z16_mandatory{
	    background-image: url(../img/krest.png);   
}
.img_z16_check{
	background-image: url(../img/chek.png);
}
.submit_z16{
	padding: 5px;
}

#z17{
    width: 350px;
    margin: 0 auto;
    text-align: center;
}

$(document).ready(function () {
    $('#z16').validate(function () {
        $.validate("#login_email", {
            rules: {
                login_email: {
                    required: true,
                },
                email: {
                    required: true,
                    email: true,
                },
            },
        });
    });
    $('#z16').validate(function () {
        $.validate("#login_name", {
            rules: {
                login_name: {
                    required: true,
                },
            },
        });
    });
(тут я начал пытаться поменять картинки, я понимаю что нужно заменить классы но не получается)
$( ".img_z16_mandatory" ).change(function() {
  el.classList.remove('.img_z16_mandatory');
  el.classList.add('.img_z16_check');
  }
});

http://prnt.sc/d4m9vp нужно вместо крестика сделать галочки если ввел все верно

Последний раз редактировалось SpaTen, 08.11.2016 в 16:25.
Ответить с цитированием
  #2 (permalink)  
Старый 08.11.2016, 17:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,080

validate и смена класса
SpaTen,

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<head>
</script>
  <style type="text/css">

  .z16{
  width: 700px;
height: 300px;
margin-left: 20px;
}
.z16 label{
padding: 10px;
    padding-left: 0;
}
.lable_block{
      width: 100px;
    display: inline-block;
}
.z16 ul li{
  list-style: none;
  padding: 10px 0px 10px 0px;
}
.z16 ul li input{

}
.img_z16{
  width: 18px;
  height: 18px;
  vertical-align: middle;
  text-align: center;
  display: inline-block;
      background-repeat: no-repeat;
      background-size: cover;
}
.img_z16_mandatory:before{
      content: "\2715";
      color: #FF0000;
}
.img_z16_check:before{
   content: "\2714";
   color: #008000;
}
.submit_z16{
  padding: 5px;
}

#z17{
    width: 350px;
    margin: 0 auto;
    text-align: center;
}

  </style>
<script src="http://code.jquery.com/jquery-1.12.2.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.15.0/jquery.validate.js"></script>


  <script>

$(function () {
 var validator = $("#z16").validate({
        rules: {
            login_email: {
                required: true,
                email: true
            },
            login_name: {
                required: true
            }

        }
    })
var arrId = ["#login_name", "#login_email"];
$.each(arrId, function(indx, id) {
        var next = $(id).next();
        var fn = function() {
            validator.element(id) ? next.removeClass('img_z16_mandatory').addClass('img_z16_check') : next.removeClass('img_z16_check').addClass('img_z16_mandatory')
        };
        $(id).on("input", fn);

    }
);
});
  </script>
</head>
<body>
<form id="z16" method="post" action="" style="display:block;">
    <label>Пожалуйста, заполните обязательные поля.</label>
  <br>
  <ul>
    <li>
      <div class="lable_block"><label for="login_name">Имя:</label></div>
      <input type="text" id="login_name" name="login_name" size="20" minlength="3" required
                   data-msg-required="Введите Имя" data-msg-minlength="Имя должно иметь минимум 3 символа" aria-required="true" aria-invalid="true">
      <div class="img_z16 img_z16_mandatory"></div>


    </li>
    <li>
      <div class="lable_block"><label for="Ege_name">Возраст:</label></div>
      <input type="number" size="1"  min="1" max="99" value="1" style="width:35px;">
      <div class="img_z16 img_z16_check"></div>
    </li>
    <li>
      <div class="lable_block"><label for="login_email">E-mail:</label></div>
       <input type="email" id="login_email" name="login_email" size="20" required
                   data-msg-required="Вы забыли написать свой email"
                   data-msg-email="Обязательно нужно написать @ и .!!!" aria-required="true" aria-invalid="true">
      <div class="img_z16 img_z16_mandatory"></div>
    </li>
    <li>
      <div class="lable_block"><label for="Sit_name">Сайт:</label></div>
      <input type="text" name="name" size="20">
      <div class="img_z16 img_z16_check"></div>
    </li>
    <li>
      <input class="submit_z16" type="submit" value="Отправить">
    </li>
  </ul>


</form>

</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 08.11.2016, 17:43
Новичок на форуме
Отправить личное сообщение для SpaTen Посмотреть профиль Найти все сообщения от SpaTen
 
Регистрация: 08.11.2016
Сообщений: 6

Спасибо большое помогло!!!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не могу понять в чем проблема с tooltip malin (X)HTML/CSS 2 15.02.2016 12:54
валидация полей через jquery validation. avanesov89 Общие вопросы Javascript 1 01.11.2015 21:44
Налажал гдето в коде и не могу понять где. злобная_пипа jQuery 4 24.10.2015 15:31
не могу понять в чём ошибка scuter Общие вопросы Javascript 2 28.08.2008 15:22
Не могу понять как работает jQuery kostiaGt jQuery 2 20.07.2008 08:42