На Отправить, переменная, которая должна измениться, не? Зачем? - PullRequest
0 голосов
/ 28 июня 2018

То, что я пытаюсь сделать, это когда ввод совпадает с именем переменной, пользователь не может нажать кнопку « изменить », но когда ввод отличается, пользователю разрешено нажать кнопку ' change ' и имя значения изменится, но проблема в том, что переменная не меняется ... Почему?

Вот код:

<!DOCTYPE html>
<html>
<head>
    <title>App</title>
</head>
<body>
<form id="sendNameForm">
    <input id="name" type="text" value="John"/>
    <button id="sendNameBtn" type="submit" disabled>Change</button>
</form>
<script src="jquery-1.12.4.js"></script>
<script>

    $('#sendNameForm').submit(function() {
        var name = $('#name').val();
        dis_enableNameSend();
        alert("Success!");
        return false;
    });

    var name= $('#name').val();

    function dis_enableNameSend(){
        var newName = $('#name').val();
        if(newName==name){
            document.getElementById("sendNameBtn").disabled = true;
        }else{
            document.getElementById("sendNameBtn").disabled = false;
        }
    }

    $('#name').on('input', function() {
        dis_enableNameSend();
    });

</script>
</body>
</html>

Спасибо!

1 Ответ

0 голосов
/ 28 июня 2018

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

$('#sendNameForm').submit(function(event) {
event.preventDefault()
        var name = $('#name').val();
        dis_enableNameSend();
        alert("Success!");
        return false;
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...