Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Минимальная длинна пароля (https://javascript.ru/forum/dom-window/46635-minimalnaya-dlinna-parolya.html)

Mizter Egoist 17.04.2014 17:33

Минимальная длинна пароля
 
Шалом всем кто чтет!
Решил поиграть с валидацией форм.
Почитал интернеты, пописал, получилось вот что: http://lab.mizter.ru/form.html
Все супер пупер работает и меня это вполне даже устраивает.
Но все таки он не совершенен)))
Вот код:
$(document).ready(function () {
	$("#pass_in").val(pass_in).hide();
	$("#pass_confirm").val(pass_confirm).hide();
	$(".registerForm").keyup(function() {
		var pwd_in = $("#pwd_in").val();
		var pwd_confirm = $("#pwd_confirm").val();
		var pass_in = $("#pass_in").val();
		var pass_confirm = $("#pass_confirm").val();
		if(pwd_in != pwd_confirm || pwd_in == "" || pwd_confirm == "" || pass_in != pass_confirm || pass_in == "" || pass_confirm == "") {
			$("#pwd_in").addClass("invalid").removeClass("valid");
			$("#pwd_confirm").addClass("invalid").removeClass("valid");
			$("#pass_in").addClass("invalid").removeClass("valid");
			$("#pass_confirm").addClass("invalid").removeClass("valid");
		} else if (pwd_in == pwd_confirm || pwd_in != "" || pwd_confirm != "" || pass_in == pass_confirm || pass_in != "" || pass_confirm != "") {
			$("#pwd_in").addClass("valid").removeClass("invalid");
			$("#pwd_confirm").addClass("valid").removeClass("invalid");
			$("#pass_in").addClass("valid").removeClass("invalid");
			$("#pass_confirm").addClass("valid").removeClass("invalid");
		}
	}).keyup();
	$(".showORhide").click(function() {
		var pwd_in = $("#pwd_in").val();
		var pwd_confirm = $("#pwd_confirm").val();
		var pass_in = $("#pass_in").val();
		var pass_confirm = $("#pass_confirm").val();
		if ($("#pwd_in").is(":visible") && $("#pwd_confirm").is(":visible")) {
			$("#pwd_in").val(pass_in).hide();
			$("#pwd_confirm").val(pass_confirm).hide();
			$("#pass_in").val(pwd_in).show();
			$("#pass_confirm").val(pwd_confirm).show();
		} else {
			$("#pass_in").val(pwd_in).hide();
			$("#pass_confirm").val(pwd_confirm).hide();
			$("#pwd_in").val(pass_in).show();
			$("#pwd_confirm").val(pass_confirm).show();
		}
	});
});


Ради интереса и большего совершенства захотел прописать минимальную длину пароля, скажем 4 или 6 символов, вдруг кто потом в сети найдет этот код и будет использовать, лично для меня пароль из одной буквы или какого нибудь символа вполне приемлем.

Пробовал и pwd_in.length >= 6 и pwd_in.length >= pwd_in.attr("minlength") и кучу всего. Но увы, результата не получил.

Вот html:
<form method="post" name="bform" class="registerForm">
	<input type="hidden" name="TYPE" value="REGISTRATION">
	<h2>Регистрация</h2>
	<label for="USER_NAME">Ваше имя:</label>
	<input type="text" name="USER_NAME" pattern="[A-Za-zА-Яа-яЁё]{2,30}" maxlength="30" value="" placeholder="Имя" required>
	<label for="USER_LAST_NAME">Ваша фамилия:</label>
	<input type="text" name="USER_LAST_NAME" pattern="[A-Za-zА-Яа-яЁё]{2,30}" maxlength="30" value="" placeholder="Фамилия" required>
	<label for="USER_LOGIN">Придумайте логин:</label>
	<input type="text" name="USER_LOGIN" pattern="[A-Za-zА-Яа-яЁё-0-9]{2,30}" maxlength="30" value="" placeholder="Логин" required>
	<label for="USER_PASSWORD">Придумайте пароль:</label>
	<input type="password" name="USER_PASSWORD" id="pwd_in" pattern="[A-Za-zА-Яа-яЁё-0-9]{6,30}" maxlength="30" minlength="6" value="" placeholder="Пароль" required>
	<input type="text" name="USER_PASSWORD" id="pass_in" pattern="[A-Za-zА-Яа-яЁё-0-9]{6,30}" maxlength="30" minlength="6" value="" placeholder="Пароль" required><p><a href="#" class="showORhide">показать</a></p>
	<label for="USER_CONFIRM_PASSWORD">Повторите, чтобы не ошибиться:</label>
	<input type="password" name="USER_CONFIRM_PASSWORD" id="pwd_confirm" pattern="[A-Za-zА-Яа-яЁё-0-9]{6,30}" maxlength="30" minlength="6" value="" placeholder="Повтор пароля" required>
	<input type="text" name="USER_CONFIRM_PASSWORD" id="pass_confirm" pattern="[A-Za-zА-Яа-яЁё-0-9]{6,30}" maxlength="30" minlength="6" value="" placeholder="Повтор пароля" required>
	<label for="USER_EMAIL">Ваша электронная почта:</label>
	<input type="email" name="USER_EMAIL" pattern="[A-Za-z0-9]{1,30}@[A-Za-z0-9]{2,30}.[A-Za-z]{2,6}" maxlength="30" value="" placeholder="Электронная почта" required>
	<textarea placeholder="Ваши дополнительные коментарии" required></textarea>
	<input type="submit" name="Register" value="Регистрация">
</form>


Гуру и не гуру, все те у кого мозгов больше чем у меня, посмотрите внимательно на мое говно–творение и напишите пожалуйста что и куда вставить, чтобы можно было поставить минимальную длину пароля.

Sweet 17.04.2014 17:57

Цитата:

Сообщение от Mizter Egoist
Вот код

А по-моему, это не код, а хуета! Просто ёбаный стыд! И совершенно непонятно, кому может быть интересно копаться в этом говнище? Мне приходилось приходить в проекты, которые состоят чуть менее, чем полностью из таких убогих партянок в сотни строк говнокода на jQ. И меня даже хватало на некоторое время разбираться в таких "тварения", но мне там платили.

Mizter Egoist 18.04.2014 15:39

Sweet,
Мне как то похуй))
Для меня главное, это новые знания и тяга к ним.
Это мой первый успешно работающий скрипт.

Erolast 18.04.2014 16:38

Первый скрипт, а уже jQuery? Не в ту сторону ты идешь. Изучи сначала основы, иначе запутаешься глубоко и окончательно.


Часовой пояс GMT +3, время: 20:30.