我有一个DTREE的树,在每个结点后,有添加,修改,删除这三个按钮,现在的情景是,
我要点修改按钮,把该结点的一系列详细信息读取出来,并用一个DIV弹出的层来显示. 我的想法是,在STRUTS2的ACTION中,返回该结点的具体信息,比如以LIST的形式返回,再用JSON的方式返回给
页面,同时设置struts2的这个ACTION的RESULT TYPE为JSON,
则在前台中,如下:
$.ajax(
{
type:"post",
url:"../../../menu/listParentNodes.action",
dataType:"json",
data:"treeNodes.sort="+sort+"&treeNodes.id=" + id + "&treeNodes.name=" + myFilterEncode(currentNodeName) + "&treeNodes.pid=" + currentNodePid+"&treeNodes.url="+currentNodeUrl,
success:function(data)
{
alert(data.parentNodesList[0].id);
$("#addDiv").html(data);
...................... 这里在前台已经可以把要修改信息的结点的一个属性ALERT出来了,但现在由于属性很多,我要用一个单独的JSP页面来展示出来,但
我又不想用WINDOW.OPEN的方式,想尽量用JQUERY的方式,那请问应该如何搞比较好呢?
我要点修改按钮,把该结点的一系列详细信息读取出来,并用一个DIV弹出的层来显示. 我的想法是,在STRUTS2的ACTION中,返回该结点的具体信息,比如以LIST的形式返回,再用JSON的方式返回给
页面,同时设置struts2的这个ACTION的RESULT TYPE为JSON,
则在前台中,如下:
$.ajax(
{
type:"post",
url:"../../../menu/listParentNodes.action",
dataType:"json",
data:"treeNodes.sort="+sort+"&treeNodes.id=" + id + "&treeNodes.name=" + myFilterEncode(currentNodeName) + "&treeNodes.pid=" + currentNodePid+"&treeNodes.url="+currentNodeUrl,
success:function(data)
{
alert(data.parentNodesList[0].id);
$("#addDiv").html(data);
...................... 这里在前台已经可以把要修改信息的结点的一个属性ALERT出来了,但现在由于属性很多,我要用一个单独的JSP页面来展示出来,但
我又不想用WINDOW.OPEN的方式,想尽量用JQUERY的方式,那请问应该如何搞比较好呢?
switch (action) {
case "cut" :
case "copy" :
clipboardNode = dtnode;
pasteMode = action;
break;
case "paste" :
if (!clipboardNode) {
alert("Clipoard is empty.");
break;
}
if (pasteMode == "cut") {
// Cut mode: check for recursion and remove source
var isRecursive = false;
var cb = clipboardNode.toDict(true, function(dict) {
// If one of the source nodes is the target, we must not
// move
if (dict.key == dtnode.data.key)
isRecursive = true;
});
if (isRecursive) {
alert("Cannot move a node to a sub node.");
return;
}
dtnode.addChild(cb);
clipboardNode.remove();
} else {
// Copy mode: prevent duplicate keys:
var cb = clipboardNode.toDict(true, function(dict) {
dict.title = "Copy of " + dict.title;
delete dict.key; // Remove key, so a new one will be
// created
});
dtnode.addChild(cb);
}
clipboardNode = pasteMode = null;
// Must enable context menu for new nodes
bindContextMenu("#ajax-tree");
break;
default :
alert("Unhandled clipboard action '" + action + "'");
}
};
case 32 : // [Space]
$(dtnode.span).trigger("mousedown", {
preventDefault : true,
button : 2
}).trigger("mouseup", {
preventDefault : true,
pageX : dtnode.span.offsetLeft,
pageY : dtnode.span.offsetTop,
button : 2
});
return false; // Handle Ctrl-C, -X and -V
case 67 :
if (event.ctrlKey) { // Ctrl-C
copyPaste("copy", dtnode);
return false;
}
break;
case 86 :
if (event.ctrlKey) { // Ctrl-V
copyPaste("paste", dtnode);
return false;
}
break;
case 88 :
if (event.ctrlKey) { // Ctrl-X
copyPaste("cut", dtnode);
return false;
}
break;
}
插件:BlockUI
1.BlockUI show,提示信息:处理中
2.BlockUI show,可以显示一个div
3.赋值给div,然后隐藏BlockUI大概就样