日期:2014-05-16 浏览次数:20365 次
(function($) {
$.fn.jTree = function(options) {
var defaults = {
background : 'gray',
width : '200',
border : 'solid red 1px',
actionName : 'queryAllMenus.action'
};
// Extend our default options with those provided.
var opts = $.extend(defaults, options);
$(this).css("width", opts.width);
$(this).css("border", opts.border);
$(this).empty();
var data = queryAllMenus(opts);
createRoots(data, $(this));
// 查询所有的menu,把所有parent_id为零的结点显示出来,作为根节点
function queryAllMenus(opts) {
var retValue = null;
$.ajax({
url : opts.actionName,
context : this,
async : false,
success : function(data, status) {
retValue = data;
}
});
return retValue;
}
function createRoots(data, obj) {
for ( var i = 0; i < data.menuList.length; i++) {
if (data.menuList[i].PARENT_ID == 0) {
var node_name = data.menuList[i].NODE_NAME;
var leaf = data.menuList[i].LEAF;
var ul = $("<ul>").appendTo(obj);
if (leaf == 0) {
$("<li class='node'><input type='hidden' value='0' id='clicked'/>" + node_name + "</li>").appendTo(ul);
} else {
$("<li class='leaf'>" + node_name + "</li>").appendTo(ul);
}
}
}
}
// 点击非叶子节点的时候,判断是否点击过,如果没有点击过,查询它的子节点并显示,如果点击过,直接显示
$("li.node").click(function(event) {
if (this == event.target) {
if($(this).children("#clicked").val() == 0){
}
// $(this).children().toggle();
}
});
};
})(jQuery);
$("li.node").click(function(event) {alert(data)////////
if (this == event.target) {
if($(this).children("#clicked").val() == 0){
}
// $(this).children().toggle();
}
});