为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕桂英4014372 2021-10-14 17:47:20
我有一个带有文本输入和禁用按钮的简单表单,如果我在输入文本上写字,则可以启用此按钮,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');    });});
查看完整描述

2 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

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');

  });

});


查看完整回答
反对 回复 2021-10-14
?
Helenr

TA贡献1780条经验 获得超4个赞

您需要使用该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');

    }

  });

});


查看完整回答
反对 回复 2021-10-14
  • 2 回答
  • 0 关注
  • 173 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信