1 Star 0 Fork 0

hnxxd / B-JUI1.2

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
ztree.html 21.42 KB
一键复制 编辑 原始数据 按行查看 历史
zlp 提交于 2018-11-05 21:31 . commit
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562
<script type="text/javascript">
function changeZtree(t) {
var $panel = $.CurrentNavtab
var $t = $('#ztree1'),
$span = $('#ztree-' + t),
$log = $('#ztree-log'),
op = $t.data()
if (t != 7)
$.fn.zTree.destroy('ztree1')
switch (t) {
case 1:
var edit = op.showRenameBtn ? false : true,
rename = op.showRenameBtn ? false : true,
remove = op.showRemoveBtn ? false : true
$t.data('editEnable', edit).data('showRenameBtn', rename).data('showRemoveBtn', remove)
$log.val('data-edit-enable="' + edit + '"\r\n' + 'data-show-rename-btn="' + rename + '"\r\n' + 'data-show-remove-btn="' + remove + '"')
$span.text(($span.text() == '') ? '显示' : '')
break
case 2:
var add = op.addHoverDom ? null : 'edit',
remove = op.removeHoverDom ? null : 'edit'
$t.data('addHoverDom', add).data('removeHoverDom', remove)
$log.val('data-add-hover-dom="' + add + '"\r\n' + 'data-remove-hover-dom="' + remove + '"')
$span.text(($span.text() == '') ? '显示' : '')
break
case 3:
var check = op.checkEnable ? false : true
$t.data('checkEnable', check)
$log.val('data-check-enable="' + check + '"')
$span.text(($span.text() == '') ? '显示' : '')
break
case 4:
var edit = op.editEnable ? true : true,
bDrag = op.beforeDrag ? '' : 'M_BeforeNodeDrag',
bDrop = op.beforeDrop ? '' : 'M_BeforeNodeDrop',
onDrop = op.onDrop ? '' : 'M_NodeDrop'
$t.data('editEnable', edit).data('beforeDrag', bDrag).data('beforeDrop', bDrop).data('onDrop', onDrop)
$log.val('data-edit-enable="' + edit + '"\r\n' + 'data-before-drag="' + bDrag + '"\r\n' + 'data-before-drop="' + bDrop + '"\r\n' + 'data-on-drop="' + onDrop + '"')
$span.text(($span.text() == '') ? 'M_BeforeNodeDrag、M_BeforeNodeDrop、M_NodeDrop' : '')
break
case 5:
var add = op.beforeRemove ? null : 'edit',
remove = op.beforeRemove ? null : 'edit',
bR = op.beforeRemove ? null : 'M_BeforeRemove'
oR = op.onRemove ? null : 'M_NodeRemove'
$t.data('addHoverDom', add).data('removeHoverDom', remove).data('beforeRemove', bR).data('onRemove', oR)
$log.val('data-add-hover-dom="' + add + '"\r\n' + 'data-remove-hover-dom="' + remove + '"\r\n' + 'data-before-remove="' + bR + '"\r\n' + 'data-on-remove="' + oR + '"')
$('#ztree-2').text(($('#ztree-2').text() == '') ? '显示' : '')
$span.text(($span.text() == '') ? 'M_BeforeRemove、M_NodeRemove' : '')
break
case 6:
var diy = op.addDiyDom ? null : 'M_AddDiyDom'
$t.data('addDiyDom', diy)
$log.val('data-add-diy-dom="' + diy + '"')
$span.text(($span.text() == '') ? 'M_AddDiyDom' : '')
break
case 7:
var tree = $.fn.zTree.getZTreeObj("ztree1")
var menus = tree.getNodes()
$log.val(JSON.stringify(menus))
break
}
$panel.initui()
}
//单击事件
function ZtreeClick(event, treeId, treeNode) {
event.preventDefault()
var $detail = $('#ztree-detail')
if ($detail.attr('tid') == treeNode.tId) return
if (treeNode.name) $('#j_menu_name').val(treeNode.name)
if (treeNode.url) {
$('#j_menu_url').val(treeNode.url)
} else {
$('#j_menu_url').val('')
}
if (treeNode.tabid) {
$('#j_menu_tabid').val(treeNode.tabid)
} else {
$('#j_menu_tabid').val('')
}
if (treeNode.target) {
$('#j_menu_target').selectpicker('val', treeNode.target)
} else {
$('#j_menu_target').selectpicker('val', '')
}
$detail.attr('tid', treeNode.tId)
$detail.show()
}
//保存属性
function M_Ts_Menu() {
var zTree = $.fn.zTree.getZTreeObj("ztree1")
var name = $('#j_menu_name').val()
var url = $('#j_menu_url').val()
var tabid = $('#j_menu_tabid').val()
var target = $('#j_menu_target').val()
if ($.trim(name).length == 0) {
alertMsg.error('菜单名称不能为空!')
return;
}
var upNode = zTree.getSelectedNodes()[0]
if (!upNode) {
alertMsg.error('未选中任何菜单!')
return
}
upNode.name = name
upNode.url = url
upNode.tabid = tabid
upNode.target = target
zTree.updateNode(upNode)
}
//
function M_BeforeNodeDrag(treeId, treeNodes) {
var $log = $('#ztree-log')
$log.val('开始拖拽:' + treeNodes[0].name + '\n' + $log.val())
return true
}
//监听拖拽事件
function M_BeforeNodeDrop(treeId, treeNodes, targetNode, moveType, isCopy) {
/*禁止插入层级为2的节点*/
if (moveType == 'inner' && targetNode.level == 2) {
return false
}
/*禁止插入剩余层级不足的子节点*/
if (moveType == 'inner' && treeNodes[0].isParent) {
var molevel = 2 - targetNode.level //剩余层级
var maxlevel = 1
var zTree = $.fn.zTree.getZTreeObj("ztree1")
var nodes = zTree.transformToArray(treeNodes)
var level = nodes[0].level
for (var i = 1; i < nodes.length; i++) {
if (nodes[i].level == (level + 1)) {
maxlevel++
level++
}
}
if (maxlevel > molevel) {
return false
}
}
return true
}
//拖拽结束事件
function M_NodeDrop(event, treeId, treeNodes, targetNode, moveType, isCopy) {
var $log = $('#ztree-log')
$log.val('拖拽结束!\n' + $log.val())
}
//删除前事件
function M_BeforeRemove(treeId, treeNode) {
var $log = $('#ztree-log')
$log.val('准备删除:' + treeNode.name + '\n' + $log.val())
return true
}
//删除结束事件
function M_NodeRemove(event, treeId, treeNode) {
var $log = $('#ztree-log')
$log.val('删除成功!\n' + $log.val())
}
//自定义DOM
function M_AddDiyDom(treeId, treeNode) {
var aObj = $('#' + treeNode.tId + '_a')
if ($('#diyBtn_' + treeNode.id).length > 0) return
aObj.append('<button type="button" class="diyBtn1" id="diyBtn_' + treeNode.id + '" title="' + treeNode.name + '" onfocus="this.blur();"><i class="fa fa-plane"></i></button>')
$('#diyBtn_' + treeNode.id).bind('click', function () {
$(this).alertmsg('info', (treeNode.name + ' 的飞机!'))
})
}
function returnJSON() {
return [{
"id": 1,
"pid": 0,
"faicon": "rss",
"faiconClose": "cab",
"name": "表单元素",
"level": 0,
"tId": "ztree1_1",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": true,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 10,
"pid": 1,
"url": "form-button.html",
"tabid": "form-button",
"faicon": "bell",
"pId": 1,
"name": "按钮",
"level": 0,
"tId": "ztree1_2",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 11,
"pid": 1,
"url": "form-input.html",
"tabid": "form-input",
"faicon": "info-circle",
"pId": 1,
"name": "文本框",
"level": 0,
"tId": "ztree1_3",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 12,
"pid": 1,
"url": "form-select.html",
"tabid": "form-select",
"faicon": "ellipsis-v",
"pId": 1,
"name": "下拉选择框",
"level": 0,
"tId": "ztree1_4",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 13,
"pid": 1,
"url": "form-checkbox.html",
"tabid": "table",
"faicon": "soccer-ball-o",
"pId": 1,
"name": "复选、单选框",
"level": 0,
"tId": "ztree1_5",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 14,
"pid": 1,
"url": "form.html",
"tabid": "form",
"faicon": "comments",
"pId": 1,
"name": "表单综合演示",
"level": 0,
"tId": "ztree1_6",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 2,
"pid": 0,
"name": "表格",
"level": 0,
"tId": "ztree1_7",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 20,
"pid": 2,
"url": "table.html",
"tabid": "table",
"faicon": "signal",
"pId": 2,
"name": "普通表格",
"level": 0,
"tId": "ztree1_8",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 21,
"pid": 2,
"url": "table-fixed.html",
"tabid": "table-fixed",
"faicon": "rss-square",
"pId": 2,
"name": "固定表头表格",
"level": 0,
"tId": "ztree1_9",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": false,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}, {
"id": 22,
"pid": 2,
"url": "table-edit.html",
"tabid": "table-edit",
"faicon": "bookmark-o",
"pId": 2,
"name": "可编辑表格",
"level": 0,
"tId": "ztree1_10",
"parentTId": null,
"open": false,
"isParent": false,
"zAsync": true,
"isFirstNode": false,
"isLastNode": true,
"isAjaxing": false,
"checked": false,
"checkedOld": false,
"nocheck": false,
"chkDisabled": false,
"halfCheck": false,
"check_Child_State": -1,
"check_Focus": false,
"isHover": false,
"editNameFlag": false
}]
}
</script>
<div class="bjui-pageContent">
<div style="padding:20px;">
<div class="clearfix">
<div style="float:left; width:220px; height:240px; overflow:auto;">
<ul id="ztree1" class="ztree" data-toggle="ztree"
data-options="{
expandAll: true,
onClick: 'ZtreeClick'
}"
>
<li data-id="1" data-pid="0" data-faicon="rss" data-faicon-close="cab">表单元素</li>
<li data-id="10" data-pid="1" data-url="form-button.html" data-tabid="form-button"
data-faicon="bell">按钮
</li>
<li data-id="11" data-pid="1" data-url="form-input.html" data-tabid="form-input"
data-faicon="info-circle">文本框
</li>
<li data-id="12" data-pid="1" data-url="form-select.html" data-tabid="form-select"
data-faicon="ellipsis-v">下拉选择框
</li>
<li data-id="13" data-pid="1" data-url="form-checkbox.html" data-tabid="table"
data-faicon="soccer-ball-o">复选、单选框
</li>
<li data-id="14" data-pid="1" data-url="form.html" data-tabid="form" data-faicon="comments">表单综合演示
</li>
<li data-id="2" data-pid="0">表格</li>
<li data-id="20" data-pid="2" data-url="table.html" data-tabid="table" data-faicon="signal">普通表格
</li>
<li data-id="21" data-pid="2" data-url="table-fixed.html" data-tabid="table-fixed"
data-faicon="rss-square">固定表头表格
</li>
<li data-id="22" data-pid="2" data-url="table-edit.html" data-tabid="table-edit"
data-faicon="bookmark-o">可编辑表格
</li>
</ul>
</div>
<div id="ztree-detail" style="display:none; margin-left:230px; width:300px; height:240px;">
<div class="bs-example" data-content="详细信息">
<div class="form-group">
<label for="j_menu_name" class="control-label x85">菜单名称:</label>
<input type="text" class="form-control validate[required] required" name="m.name"
id="j_menu_name" size="15" placeholder="名称"/>
</div>
<div class="form-group">
<label for="j_menu_url" class="control-label x85">URL:</label>
<input type="text" class="form-control" name="m.url" id="j_menu_url" size="15"
placeholder="Url"/>
</div>
<div class="form-group">
<label for="j_menu_tabid" class="control-label x85">tabid:</label>
<input type="text" class="form-control" name="m.tabid" id="j_menu_tabid" size="15"
placeholder="tabid"/>
</div>
<div class="form-group">
<label for="j_menu_target" class="control-label x85">target:</label>
<select class="selectpicker show-tick" id="j_menu_target" data-style="btn-default btn-sel"
data-width="auto">
<option value=""></option>
<option value="navTab">navTab</option>
<option value="dialog">dialog</option>
</select>
</div>
<div class="form-group" style="padding-top:8px; border-top:1px #DDD solid;">
<label class="control-label x85"></label>
<button class="btn btn-green" onclick="M_Ts_Menu();">更新菜单</button>
</div>
</div>
</div>
</div>
<div class="clearfix" style="margin-top:20px;">
<div style="float: left; width: 220px;">
<p><label class="control-label x120">默认编辑删除按钮:</label><span id="ztree-1"
class="label label-default"></span></p>
<p><label class="control-label x120">自定义添/删按钮:</label><span id="ztree-2"
class="label label-default"></span></p>
<p><label class="control-label x120">复选框:</label><span id="ztree-3" class="label label-default"></span>
</p>
<p><label class="control-label x120">拖拽事件:</label><span id="ztree-4"
class="label label-default"></span></p>
<p><label class="control-label x120">删除事件:</label><span id="ztree-5"
class="label label-default"></span></p>
<p><label class="control-label x120">自定义DOM:</label><span id="ztree-6"
class="label label-default"></span></p>
</div>
<div style="margin-left:230px;">
<textarea style="width:400px; font-size:12px;" rows="5" id="ztree-log"></textarea>
</div>
</div>
<hr>
<div class="btn-group" style="margin-top:5px;">
<button type="button" class="btn-default btn-sm" onclick="changeZtree(1);">默认编/删按钮</button>
<button type="button" class="btn-default btn-sm" onclick="changeZtree(2);">自定义添/删按钮</button>
<button type="button" class="btn-default btn-sm" onclick="changeZtree(3);">复选框</button>
<button type="button" class="btn-default btn-sm" onclick="changeZtree(4);">拖拽</button>
<button type="button" class="btn-default btn-sm" onclick="changeZtree(5);">删除</button>
<button type="button" class="btn-default btn-sm" onclick="changeZtree(6);">自定义DOM</button>
<button type="button" class="btn-orange btn-sm" style="float: right;" onclick="changeZtree(7);">提交树</button>
</div>
<h4><a href="doc/plugin/ztree.html" data-toggle="navtab" data-id="doc-ztree"
data-title="zTree">点我查看初始化方法及参数设置</a></h4>
</div>
</div>
<div class="bjui-pageFooter">
<ul>
<li>
<button type="button" class="btn-close" data-icon="close">关闭</button>
</li>
</ul>
</div>
JavaScript
1
https://gitee.com/hnxxd/B-JUI1.2.git
git@gitee.com:hnxxd/B-JUI1.2.git
hnxxd
B-JUI1.2
B-JUI1.2
master

搜索帮助