Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.07.2019, 00:40
Аспирант
Отправить личное сообщение для HotReboot Посмотреть профиль Найти все сообщения от HotReboot
 
Регистрация: 06.11.2017
Сообщений: 42

Отключение button по id
Здравствуйте. Есть форма с проверкой средствами JS на совпадение паролей, существующего login' а email'а.
<input class="password" name="password" type="password">
<input id="login_reg" name="login" type="text">
<span id="msgbox_login" style="display:none"></span>
<input class="cor_password" name="cor_password" type="password">
<div class="error"></div>
<input id="email_reg" type="email" name="email>
<span id="msgbox_reg" style="display:none"></span>
<button type="submit" name="register" id="submit" >Отправить</button>

Так как я в JS чайник, то сиё ниже взято откуда-то
<script type="text/javascript">
$(".cor_password").on("keyup", function() {
    var value_input1 = $(".password").val();
    var value_input2 = $(this).val();
    if(value_input1 != value_input2) {
        $(".error").html("Пароли не совпадают!");
        $("#submit").attr("disabled", "disabled");
    } else {
        $("#submit").removeAttr("disabled");
        $(".error").html("");
    }
});
</script>

<script language="javascript">
    $(document).ready(function() {
        $("#email_reg").blur(function() {
            $("#msgbox_reg").removeClass().addClass('messagebox').text('Проверка...').fadeIn("slow");
            $.post("./system/mail_check.php", {
                user_email_reg: $(this).val()
            }, function(data) {
                if (data == 'no')
                {
                    $("#msgbox_reg").fadeTo(10, 0.1, function()
                        {
                            $(this).html('Этот E-Mail уже существует').addClass('messageboxerror').fadeTo(900, 1);
                            $("#submit").attr("disabled", "disabled"); 
                        });
                } else {
                    $("#msgbox_reg").fadeTo(10, 0.1, function() {
                        $(this).html('');
                        $("#submit").removeAttr("disabled"); 
                    });
                }
            });
        });
    });
</script>

Для поля логин такой-же последний код соответственно с другими id. Всё это работает, но так как у button id один, то при несовпадение паролей или нахождения email'а/login'а кнопка не disabled. Если оставить, что нибудь одно, то по отдельности выключается. Есть выход? Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 08.07.2019, 12:11
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

HotReboot,
Можно сделать глобальные флаги результата проверки каждого параметра и состояние кнопки определять по сочетанию всех этих флагов.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Валидация jquery c button type=button designerandrey jQuery 4 09.11.2018 15:21
Как сделать чтобы в текст button менялось значение в зависимости от количества выбран mopsusha Общие вопросы Javascript 10 19.03.2018 20:16
обработка щелчка по button. тонкие различия с input type=button xtfkpi Events/DOM/Window 2 28.01.2015 23:32
элемент внутри кнопки button FanAizu (X)HTML/CSS 2 15.07.2014 20:44
Проблема radio button с кроссбраузерностью shkarbatov Javascript под браузер 0 28.07.2011 10:55