检查两个字段以输入字符

问题描述 投票:0回答:2

我有两个字段和一个按钮。任务:在两个字段中都输入字符之前,该按钮不起作用。如果至少一个字段为空,则该按钮无效。

字段ID:«邮政编码自»和«邮政编码至»

我有以下代码:

jQuery('input#zipcode-button').attr('disabled','disabled');
jQuery('input#zipcode-from').keyup(function(){
    if (jQuery('input#zipcode-from').val() == "") {
        jQuery('input#zipcode-button').attr('disabled','disabled');
    }
    else
    {
        jQuery(':input#zipcode-button').removeAttr('disabled');
    }
})

它适用于第一个领域。但是如何检查两个字段?尝试了&&,但我无法将此功能设为true。

jquery keyup
2个回答
1
投票

您可以只使用css语法将keyup附加到两个字段,然后检查其中一个字段是否为空(您应在此处使用OR)。像这样的东西:

jQuery('input#zipcode-button').attr('disabled','disabled');
jQuery('input#zipcode-from, input#zipcode-to').keyup(function(){
if ((jQuery('input#zipcode-from').val() == "")||(jQuery('input#zipcode-to').val() == "")) {
    jQuery('input#zipcode-button').attr('disabled','disabled');
}
else
{
    jQuery(':input#zipcode-button').removeAttr('disabled');
}
})

0
投票

这里是没有输入字段并且不使用jQuery选择器的较短版本。您不需要针对空字符串检查该值,但是我可以理解是否出于可读性目的。您可以使用!$('#zipcode-from').val()检查该值是否为空。

现在if语句包含在conditional statement中。

Fiddle here.

$('#zipcode-button').attr('disabled', 'disabled');

$('#zipcode-from, #zipcode-to').keyup(function() {
  (!$('#zipcode-from').val() || !$('#zipcode-to').val()) ? $('#zipcode-button').attr('disabled', 'disabled') : $('#zipcode-button').removeAttr('disabled');
})
© www.soinside.com 2019 - 2024. All rights reserved.