在 jquery 中,我如何使用 .change 立即启用按钮?

我有一个带有文本输入和禁用按钮的简单表单,如果我在输入文本上写字,则可以启用此按钮,keyup() 是最好的方法,但是当我使用右键单击并粘贴此事件时,不会调用此事件并且不会不触发那个事件。所以我尝试了 event change(),它可以工作,但不是立即生效,我必须使输入文本失去焦点才能启用按钮。如何通过复制和粘贴立即启用此按钮?


$(document).ready(function () {

    $('#id_input').bind('keyup paste click', function () {

        if ($('#id_input').val().length === 6 ){

            $('#btnSubmit').removeAttr('disabled');

        }

        else

        $('#btnSubmit').attr('disabled', 'disabled');

    });


});


慕桂英4014372
浏览 174回答 2
2回答

哆啦的时光机

Rory 是正确的,您的代码应该可以正常工作,特别是如果您使用 Ctrl + V 粘贴。我假设您只有在使用右键单击粘贴然后从上下文菜单中选择粘贴时才会遇到问题。尝试监控属性变化:$(document).ready(function() {  $('#id_input').bind('input propertychange', function() {    if ($('#id_input').val().length === 6) {      $('#btnSubmit').removeAttr('disabled');    } else      $('#btnSubmit').attr('disabled', 'disabled');  });});

Helenr

您需要使用该onpaste事件。$(document).ready(function () {  $('#id_input').bind('keyup onpaste click', function () {    if ($('#id_input').val().length === 6 ){      $('#btnSubmit').removeAttr('disabled');    } else {      $('#btnSubmit').attr('disabled', 'disabled');    }  });});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript