Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Помогите разблокировать кнопку (https://javascript.ru/forum/dom-window/41438-pomogite-razblokirovat-knopku.html)

Alexei91 13.09.2013 17:15

Помогите разблокировать кнопку
 
Помогите пожалуйста со скриптом для кнопки:
<form method="post" action="" >
<p><label for="login">Логин</label><input type="text" name="login" id="login"></p>
<p><label for="pass">Пароль</label><input type="password" name="pass" id="pass"></p>
<p><button id="button" type="submit" disabled>Вход</button></p>
</form>


Нужно чтобы кнопка принимала значение disabled, пока не заполнены оба поля (желательно с проверкой не менее 5 знаков).

PavelGor 13.09.2013 17:37

$("#login").change(function(){
	login =  $("#login").val();
        var expLogin = /^[a-zA-Z0-9_]+$/g;
	var resLogin =  login.search(expLogin);
	if(resLogin ==  -1){
		$("#login").next().hide().text("Неверный  логин").css("color","red").
fadeIn(400);
		$("#login").removeClass().addClass("inputRed");
		loginStat  = 0;
		buttonOnAndOff();
	}else{
loginStat  = 1;
	buttonOnAndOff();
}

function  buttonOnAndOff(){
	if(loginStat  == 1){
		$("#submit").removeAttr("disabled");
	}else{
		$("#submit").attr("disabled","disabled");
	}
}

Alexei91 13.09.2013 18:01

не работает:cray:
я крайне туговат в js, но мне бы без всяких текстовых полей, просто пока не заполнены поля, горит блеклым цветом, который даёт disabled, а заполнили, всё активная.

xAockd 13.09.2013 20:19

var form = $('#myForm'),
    login = $('#login'),
    pass = $('#pass'),
    submit = $('#button');
form.change(function(){
    if(login[0].value != '' && pass[0].value != ''){
        button.disabled = false;
    }else{
        button.disabled = true;
    }
})

http://jsfiddle.net/wa5BM/

Alexei91 14.09.2013 01:46

Спасибо, то что нужно:dance:
Единственное, когда поля заполнены чтобы кнопка разблокировалась надо мышкой щёлкнуть куда-нибудь в другое место. Не критично, но может можно как-то чтобы сразу разблокировалась как что-то ввёл? И чтобы стили подключились, надо чтоб ярче стала, работал hover и active только после разблокировки.
Но всё равно огромное спасибо.


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