jquery 如何确定输入不为空,而不强制用户更改输入

4zcjmb1e  于 2022-12-12  发布在  jQuery
关注(0)|答案(2)|浏览(112)

因此,如果某人需要禁用提交按钮,除非用户输入已填充,他需要这样做:

$(function () {
            $('#login').attr('disabled', true);
            $('#userinput').change(function () {
                if ($('#userinput').val() != '') {
                    $('#login').attr('disabled', false);
                } else {
                    $('#login').attr('disabled', true);
                }
            });
        });

下面是html:

<input type="text" name="userinput" class="form-control" id="userinput">

<button id="login" class="button" disabled="disabled">Submit</button>

这将工作正常,但唯一的问题是,用户必须离开输入字段,以便运行Javascript的change事件。
然而,我需要在用户仍处于活动状态时运行此命令。
那么如何在Javascript中做到这一点呢?

fgw7neuy

fgw7neuy1#

若要在使用者离开输入之前追踪变更,请使用keyup事件,而不要使用change even。

$('#userinput').on('keyup', function () {
    if ($('#userinput').val() != '') {
        $('#login').attr('disabled', false);
    } else {
        $('#login').attr('disabled', true);
    }
});
rqmkfv5c

rqmkfv5c2#

使用onfocus事件监听器:

$('#userinput').focus(func);

相关问题