我有一组员工信息,这些信息通过将员工的子部门与给定部门内的子部门的优先级进行比较来排序。
因此,当在索引中单击员工姓名时,他们的部门(存储为数据属性)用于获取共享该部门的所有其他员工,并且此集合按子部门优先级在另一个数组中手动设置
var results = $.grep(data, function(employee) {
if(employee.DEPT == dept) {
return employee.DEPT = dept;
}
});
// ** NOTE 'deptorder' is "Department" : [ "Subdepartment1", "Subdepartment2" ] defined manually
// pick the order of subdepts based on the dept
order = deptorder[dept];
第一种:
results.sort(function(a, b) {
return $.inArray(a.SUBDEPT, order) - $.inArray(b.SUBDEPT, order);
});
然后,我遍历排序后的数组并创建一个员工信息网格,其中部分标题将员工按其子部门划分。
问题:我需要在将每个子部门的员工分类到子部门组后对其进行安排。我愿意接受有关如何做到这一点的建议,但我需要做的只是标记一个“经理”,并让他们在给定子部门的网格中排在第一位。渲染经理后,其余部分可以按字母顺序排列,或者其他。
如何再次对数组进行排序以实现此目的?现在经理有一个employee.MANAGER 属性'1',而其余的有''。
我试过了
results.sort(function(a, b) {
return (a.MANAGER == 1) - b;
});
但这不起作用。上面显示的排序是我第一次也是唯一一次使用排序的经验。任何帮助表示赞赏!