Javascript Node.js中mongodb数组的嵌套循环
嘿,我对Node.js和Mongodb还比较陌生,我正在制作一个花名册创建系统,我想让它只允许两个用户/员工在给定的班次上工作。为简单起见,班次分为“白天”和“夜间”,这两个班次位于用户可以选择的单选按钮表中。不过,我想禁用其他两个用户已经选择的按钮 我认为外部循环应该遍历用户的移位数组(星期一-->星期天),内部循环应该遍历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
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:00240分
硬编码“数据”变量,让我知道它是否有效,否则你需要粘贴从ajax调用中获得的整个JSON,这对我来说也是正确的,但是它对我不起作用,与帐户选择按钮的天数无关。在这里粘贴html在控制台上也有任何错误吗?我提到的唯一地方是o html中的脚本是班次表的一个示例,如下所示:星期一Day
9:00-17:00Points:240
硬编码“数据”如我所给的变量