Javascript Node.js中mongodb数组的嵌套循环

Javascript Node.js中mongodb数组的嵌套循环,javascript,node.js,mongodb,nested,radio-button,Javascript,Node.js,Mongodb,Nested,Radio Button,嘿,我对Node.js和Mongodb还比较陌生,我正在制作一个花名册创建系统,我想让它只允许两个用户/员工在给定的班次上工作。为简单起见,班次分为“白天”和“夜间”,这两个班次位于用户可以选择的单选按钮表中。不过,我想禁用其他两个用户已经选择的按钮 我认为外部循环应该遍历用户的移位数组(星期一-->星期天),内部循环应该遍历mongodb数据库中的每个用户。最终,我想让代码在一周中的每一天都正常工作,但现在只需要周一才能正常工作 谢谢你的帮助和建议 function disableOnLoad

嘿,我对Node.js和Mongodb还比较陌生,我正在制作一个花名册创建系统,我想让它只允许两个用户/员工在给定的班次上工作。为简单起见,班次分为“白天”和“夜间”,这两个班次位于用户可以选择的单选按钮表中。不过,我想禁用其他两个用户已经选择的按钮

我认为外部循环应该遍历用户的移位数组(星期一-->星期天),内部循环应该遍历mongodb数据库中的每个用户。最终,我想让代码在一周中的每一天都正常工作,但现在只需要周一才能正常工作

谢谢你的帮助和建议

function disableOnLoad() {
    console.log("disableOnLoad reached");
    var dayCount=0;           
    var nightCount=0;
    $.getJSON( '/shiftsTable', function( data ) {
        $.each(data, function(){
            userListData = data;         
        for(i = 0; i < 7; i++) { 
            **//$.each(data, function(){**
            if(this.shifts[i]=='day'){
             if(i==0){
                dayCount++;
                console.log("dayCount: "+dayCount);  
                if(dayCount>2){document.getElementById("monDay").disabled=true;}
             }
            }
            else if(this.shifts[0]=='night'){
                nightCount++;
                if (nightCount>2){document.getElementById("monNight").disabled=true;}
            } 
            }
            });
    });
};
函数disableOnLoad(){
log(“已达到禁用加载”);
var dayCount=0;
var nightCount=0;
$.getJSON('/shiftsTable',函数(数据){
$.each(数据,函数(){
userListData=数据;
对于(i=0;i<7;i++){
**//$.each(数据,函数(){**
if(this.shifts[i]=='day'){
如果(i==0){
dayCount++;
console.log(“dayCount:+dayCount”);
如果(dayCount>2){document.getElementById(“星期一”).disabled=true;}
}
}
else if(this.shifts[0]=='night'){
nightCount++;
如果(nightCount>2){document.getElementById(“monNight”).disabled=true;}
} 
}
});
});
};

假设这是数据

    data = [{
    "_id": "589f60999c471a32c6a3a380",
    "name": "Ciara",

    "position": "Sales assistant",
    "location": "Dublin",
    "admin": 0,
    "shifts": ["day", "day", "night", null, null, null, null, "23"]
  },
  {
    "_id": "589f60999c471a32c6a3a380",
    "name": "Ciara2",

    "position": "Sales assistant",
    "location": "Dublin",
    "admin": 0,
    "shifts": ["day", "day", "night", null, null, null, null, "23"]
  },{
    "_id": "589f60999c471a32c6a3a380",
    "name": "Ciara3",
    "position": "Sales assistant",
    "location": "Dublin",
    "admin": 0,
    "shifts": ["day", "day", "night", null, null, null, null, "23"]
  }];
所以这个代码对我有用

     $.each(data, function(val) {

    userListData = data;
    for (i = 0; i < 7; i++) { //* * //$.each(data, function(){**
      if (i==0 && this.shifts[i] == 'day') {
          dayCount++;
          if (dayCount == 2) {
            document.getElementById("monDay").disabled = true;
          }
      } else if (i==0 && this.shifts[i] == 'night') {
        nightCount++;
        if (nightCount == 2) {
          document.getElementById("monNight").disabled = true;
        }
      }
    }
  });

}
$。每个(数据、函数(val){
userListData=数据;
对于(i=0;i<7;i++){/**/$。每个(数据,函数(){**
如果(i==0&&this.shift[i]==day'){
dayCount++;
如果(dayCount==2){
document.getElementById(“星期一”).disabled=true;
}
}else if(i==0&&this.shifts[i]==night'){
nightCount++;
如果(夜间计数==2){
document.getElementById(“monNight”).disabled=true;
}
}
}
});
}

让我知道它是否有效。

假设这是数据

    data = [{
    "_id": "589f60999c471a32c6a3a380",
    "name": "Ciara",

    "position": "Sales assistant",
    "location": "Dublin",
    "admin": 0,
    "shifts": ["day", "day", "night", null, null, null, null, "23"]
  },
  {
    "_id": "589f60999c471a32c6a3a380",
    "name": "Ciara2",

    "position": "Sales assistant",
    "location": "Dublin",
    "admin": 0,
    "shifts": ["day", "day", "night", null, null, null, null, "23"]
  },{
    "_id": "589f60999c471a32c6a3a380",
    "name": "Ciara3",
    "position": "Sales assistant",
    "location": "Dublin",
    "admin": 0,
    "shifts": ["day", "day", "night", null, null, null, null, "23"]
  }];
所以这个代码对我有用

     $.each(data, function(val) {

    userListData = data;
    for (i = 0; i < 7; i++) { //* * //$.each(data, function(){**
      if (i==0 && this.shifts[i] == 'day') {
          dayCount++;
          if (dayCount == 2) {
            document.getElementById("monDay").disabled = true;
          }
      } else if (i==0 && this.shifts[i] == 'night') {
        nightCount++;
        if (nightCount == 2) {
          document.getElementById("monNight").disabled = true;
        }
      }
    }
  });

}
$。每个(数据、函数(val){
userListData=数据;
对于(i=0;i<7;i++){/**/$。每个(数据,函数(){**
如果(i==0&&this.shift[i]==day'){
dayCount++;
如果(dayCount==2){
document.getElementById(“星期一”).disabled=true;
}
}else if(i==0&&this.shifts[i]==night'){
nightCount++;
如果(夜间计数==2){
document.getElementById(“monNight”).disabled=true;
}
}
}
});
}

让我知道它是否有效。

你的JSON看起来怎么样?@SharjeelAhmed整个用户对象如下{“_id”:ObjectId(“589f60999c471a32c6a3a380”),“name:“Ciara”,“email:”ciara@test.com“,”公司“:”苹果“,”用户名“:”希拉“,”密码“:“$2a$10$QkaRzb7W/BOzvtnY8hPtQ.j3GWy.XI92X6osh3m4/TNEuPBrAprva”,“职位”:“销售助理”,“地点”:“都柏林”,“管理”:0,“班次”:[“日”,“日”,“夜”,空,空,空,空,空,23”]我觉得很好,你在哪里遇到问题?@SharjeelAhmed如果我删除“if(I==0)”,上面的代码就没有效果{“语句,然后代码遍历一个用户,检查他们的班次数组中是否总共有两个‘天’,而我想遍历所有用户,检查他们中是否有两个班次中有‘天’[0]你的JSON看起来怎么样?@SharjeelAhmed整个用户对象如下{“_id”:ObjectId(“589f60999c471a32c6a3a380”),“name”:“Ciara”,“email”:ciara@test.com“,”公司“:”苹果“,”用户名“:”希拉“,”密码“:“$2a$10$QkaRzb7W/BOzvtnY8hPtQ.j3GWy.XI92X6osh3m4/TNEuPBrAprva”,“职位”:“销售助理”,“地点”:“都柏林”,“管理”:0,“班次”:[“日”,“日”,“夜”,空,空,空,空,空,23”]我觉得很好,你在哪里遇到问题?@SharjeelAhmed如果我删除“if(I==0)”,上面的代码就没有效果{“语句,然后代码遍历一个用户,检查他们的班次数组中是否总共有两个‘天’,而我想遍历所有用户,检查他们中是否有两个班次中有‘天’[0]这对我来说也是正确的,但对我来说不起作用,与帐户选择按钮的天数无关。请在此处粘贴您的html。控制台上也有任何错误?我在html中引用脚本的唯一位置是移位表的示例,如下所示:星期一

Day

9:00-17:00

240分

硬编码“数据”变量,让我知道它是否有效,否则你需要粘贴从ajax调用中获得的整个JSON,这对我来说也是正确的,但是它对我不起作用,与帐户选择按钮的天数无关。在这里粘贴html在控制台上也有任何错误吗?我提到的唯一地方是o html中的脚本是班次表的一个示例,如下所示:星期一

Day

9:00-17:00

Points:240

硬编码“数据”如我所给的变量