我在屏幕上显示了一个员工列表。当我单击其中一个时,会出现一个弹出窗口,其中包含可以对该员工“完成”的几个操作的列表(删除、修改......)。当我点击一个员工时,弹出窗口会正确显示,但是当我点击另一个员工时,新的弹出窗口会附加到前一个窗口。这是我的做法:
employee.click(function(){ //employee is a javascript variable
createPopUp(taskActions, mainDiv); //taskActions is an array of strings
});
function createPopUp(taskActions, parentDiv) {
var popUp = null;
if (taskActions.length != 0) {
popUp = $('<div style="z-index:2;position:fixed;display:inline-block;border-style:solid;border-color:black;text-align:center;margin:0px;padding:2px;background-color:white"/>');
for (var i = 0; i< taskActions.length; i++) {
function createAction(i) {
var actionDiv = $('<div>' + taskActions[i]+ '</div>');
actionDiv.on('click', function(event) {
//doSomeAction
});
popUp.append(actionDiv);
}
createAction(i);
}
parentDiv.append(popUp);
}
}
我知道我必须在 createPopUp 中的某处隐藏弹出窗口。并且很可能在将 popUp 附加到 parentDiv 之前。但是当我这样做时,弹出窗口不再出现。
这里有什么问题?
谢谢您的帮助