【发布时间】:2017-07-06 23:21:40
【问题描述】:
嘿,所以我对 Node.js 和 Mongodb 相当陌生,我正在制作一个花名册创建系统,我想制作它以便只有两个用户/员工可以在给定的班次中工作。为简单起见,班次分为“白天”和“夜晚”,它们位于用户可以选择的单选按钮表中。班次页面的加载但是我想禁用那些已经被其他两个用户选择的按钮。
我认为外部循环应该遍历用户的 shifts 数组(星期一 --> 星期日),然后内部循环应该遍历 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;}
}
}
});
});
};
【问题讨论】:
-
你的班次 JSON 看起来如何?
-
@SharjeelAhmed 整个用户对象如下 { "_id" : ObjectId("589f60999c471a32c6a3a380"), "name" : "Ciara", "email" : "ciara@test.com",公司”:“Apple”,“用户名”:“Ciara”,“密码”:“$2a$10$QkaRzb7W/BOzvtnY8hPtQ.j3GWy.XI92X6osh3m4/TNEuPBrAprva”,“职位”:“销售助理”,“位置”:“都柏林", "admin" : 0, "班次" : [ "day", "day", "night", null, null, null, null, "23" ] }
-
对我来说看起来不错,你在哪里遇到问题?
-
@SharjeelAhmed 上面的代码无效,如果我删除“if(i==0){”语句,那么代码会遍历用户并检查他们是否总共有两个“天”在他们的班次数组中,而我想遍历所有用户并检查他们中是否有两个在他们的班次中使用“day”[0]
标签: javascript node.js mongodb nested radio-button