如何检查表单选项选择然后删除禁用按钮

Posted

技术标签:

【中文标题】如何检查表单选项选择然后删除禁用按钮【英文标题】:How to check form option select then remove the disable on button 【发布时间】:2018-03-17 02:16:07 【问题描述】:

生日,

我在 Stack Overflow 中找不到确切回答我想要实现的目标的问题。

目标是使用 jQuery 来检查两个输入是否都有值,并且 form select 下拉列表不是 Staff Select,而当前是 disabled。一旦两个输入都有数据并选择了员工姓名,我的按钮就会激活,disabled 被删除。

您可以查看我的jsFiddle 的html

我正在使用的 jQuery 已经完成了我想要完成的 2/3(两个输入):

var $input = $('#transactionform input'),
    $register = $('#add_transaction');    
$register.attr('disabled', true);

$input.keyup(function() 
    var trigger = false;
    $input.each(function() 
        if (!$(this).val()) 
            trigger = true;
        
    );
    trigger ? $register.attr('disabled', true) : $register.removeAttr('disabled').addClass('addbtngreen');
);

我尝试为form select 添加验证是针对option 属性:disabled,如下所示:

if (!$(this).val() || $('selected#ccstaff option').attr(':disabled')) 
    trigger = true;

非常感谢任何指导!提前谢谢你。

【问题讨论】:

如果您禁用第一个选项,您将无法再次选择它。相反,我建议为第一个选项分配一些唯一值,并检查所选值是否不是那个值。例如:$('select#ccstaff').val() != 'some_uniq_val' 感谢您的想法。 :-) 【参考方案1】:

添加一个通用验证函数并触发它fiddle

function validate()
            var trigger = false;
            $input.each(function() 
                if (!$(this).val()) 
                    trigger = true;
                
            );
      console.log($select.val());
      trigger= $select.val()=== null;  
            trigger ? $register.attr('disabled', true) :                               $register.removeAttr('disabled').addClass('addbtngreen');
    

【讨论】:

以上是关于如何检查表单选项选择然后删除禁用按钮的主要内容,如果未能解决你的问题,请参考以下文章

启用/禁用表单提交按钮不起作用

请问如何添加运行时选项来禁用检查或此警告

禁用先前选择的下拉选项,检查文本和 id 值

Confluence 6 WebDAV 禁用严格路径检查

Confluence 6 WebDAV 禁用严格路径检查

如何在 Web 浏览器中启用 Java?