Javascript 启用部分验证下拉菜单上的按钮-语义UI(非常奇怪的解决方法)

Javascript 启用部分验证下拉菜单上的按钮-语义UI(非常奇怪的解决方法),javascript,semantic-ui,Javascript,Semantic Ui,目标 检查是否选择了1列下拉列表,并在语义UI中启用按钮。(参见下面的工作示例)。我的项目的最终版本将有6个这样的“列”/“屏幕” 问题 难道不能做得更简单/更干净吗?正如您在fiddle中看到的,它为每一列运行代码 我是如何让它工作的 别问我哈哈。。。在尝试了100次使用多个if和else解决方案之后,我最终用“$(this)”为当前类分配了一个ID。之后,它会查看同一类的所有元素的ID是否为空。如果元素ID均为空,则启用该按钮。我使用下面的代码使它工作。感谢: 我在stackoverflow

目标

检查是否选择了1列下拉列表,并在语义UI中启用按钮。(参见下面的工作示例)。我的项目的最终版本将有6个这样的“列”/“屏幕”

问题

难道不能做得更简单/更干净吗?正如您在fiddle中看到的,它为每一列运行代码

我是如何让它工作的

别问我哈哈。。。在尝试了100次使用多个if和else解决方案之后,我最终用“$(this)”为当前类分配了一个ID。之后,它会查看同一类的所有元素的ID是否为空。如果元素ID均为空,则启用该按钮。我使用下面的代码使它工作。感谢:

我在stackoverflow上找到的代码

$(function () {
        $('.picker').on('change', function () {     
            var SelectList = $('.picker');
            //Here i'll find how many dropdown are present
            for (var i = 0; i < SelectList.length ; i++) {
                //Here i need to check each dropdown value whether it selected or not
                if (SelectList[i].value != "") {
                    //If all dropdown is selected then Enable button
                    $("#Testing").attr("disabled", false);
                }
                else {
                    //Disable button if any dropdown is not selected
                    $("#Testing").attr("disabled", true);
                }
            }
        }); 
    });
在你看到“这没什么”的地方,我打了个错字,神奇地让它工作了。直到我看着控制台。因为“THISISNOTHING”没有定义。到目前为止,项目代码有0个错误。这会触发我的强迫症哈哈

新目标:JSFIDLE正在工作,但存在控制台错误 我编辑了你的小提琴:

“disable”以false开头,如果列中的任何下拉列表没有值,则变为true

$(function () {
  $('#myform').on('change', function () {
    var SelectList = $('.ui.dropdown.selection.thisisone');
    var disable = false;

    for (var i = 0; i < SelectList.length ; i++) {
      if ($(SelectList[i]).dropdown('get value') == "") {
        disable = true;
      }
    }

    $(".ui.right.labeled.icon.button.n1").attr( "disabled", disable);
  }); 
});
$(函数(){
$('#myform')。关于('change',函数(){
var SelectList=$('.ui.dropdown.selection.thisisone');
var disable=false;
对于(变量i=0;i
你让我开心!这个bug被解决了,这很容易实现。非常感谢你!
(($(SelectList[i]).dropdown('get value') == "") && (THISISNOTHING == 'yes' ))
$(function () {
  $('#myform').on('change', function () {
    var SelectList = $('.ui.dropdown.selection.thisisone');
    var disable = false;

    for (var i = 0; i < SelectList.length ; i++) {
      if ($(SelectList[i]).dropdown('get value') == "") {
        disable = true;
      }
    }

    $(".ui.right.labeled.icon.button.n1").attr( "disabled", disable);
  }); 
});