JqueryEasyUI中combotree应用

      JqueryEasyUI是一个不错的UI设计库,包含了很多。其中有用到combotree,这是对html标签中select的更好,是一个下拉树,显示效果比较好,看起来层次清晰,并且不是很难。图片效果如下:

 [imgr]1[/imgr][imgr]2[/imgr]

查看JqueryEasyUI里的demo得到要到达这个效果其实只是一句话可以搞定,<input name="formMap.supperMenuId" class="easyui-combotree"  value="<s:property value='menu.menu.id'/>"  id="superId" cascadeCheck="false"  required="true" missingMessage="上级菜单不能为空!" style="width:252px" />但是前提是引入了jqueryEasyUI所必须的JS文件而后CSS文件再加上这一句

$('#superId').combotree('reload',"<%=path%>/sys_privilegeAjax/menuAction_findMenuTree.action?menu.menuType="+$(":radio:checked").val());

我这里是有5种类型的菜单,并且菜单是用树形结构展现,所以这里用这个combotree是最好不过了,下面贴出代码片段

<script language="javascript">
			$(document).ready(function(){
				initData();						});
		function initData(){
			<s:if test="null eq menu">
				$("#t1").attr("checked",true);
			</s:if>
			<s:if test="menu.menuType==1">
				$("#t1").attr("checked",true);
			</s:if>
			<s:if test="menu.menuType==2">
				$("#t2").attr("checked",true);
			</s:if>
			<s:if test="menu.menuType==3">
				$("#t3").attr("checked",true);
			</s:if>
			<s:if test="menu.menuType==4">
				$("#t4").attr("checked",true);
			</s:if>
			<s:if test="menu.menuType==5">
				$("#t5").attr("checked",true);
			</s:if>
			//var url ="<%=path%>/sys_privilegeAjax/menuAction_findMenuTree.action?menu.menuType="+$(":radio:checked").val();
			//var data =null;
			//var resultMess= ajaxSubmit(url,data);
			//var treeStr = eval(resultMess);
			//$('#superId').combotree('loadData',treeStr);
			$('#superId').combotree('reload',"<%=path%>/sys_privilegeAjax/menuAction_findMenuTree.action?menu.menuType="+$(":radio:checked").val());
			
		}

var getMenuTree=function(i){
		$('#superId').combotree('clear');
		$('#superId').combotree('loadData','');
		$('#superId').combotree('reload',"<%=path%>/sys_privilegeAjax/menuAction_findMenuTree.action?menu.menuType="+i);
	}

。
。
。
。
<tr>
									<td width="20%" align="right" class="tdbg">
										<b>菜单类型:</b>
									</td>
									<td>
										<input type="radio" id="t1" name="menu.menuType" value="1" onclick="getMenuTree(1);"/>
										超级管理员
										<input type="radio" id="t2" name="menu.menuType" value="2" onclick="getMenuTree(2);"/>
										省属管理员
										<input type="radio" id="t3" name="menu.menuType" value="3" onclick="getMenuTree(3);" />
										市属管理员
										<input type="radio" id="t4" name="menu.menuType" value="4" onclick="getMenuTree(4);"/>
										区/县属管理员
										<input type="radio" id="t5" name="menu.menuType" value="5" onclick="getMenuTree(5);"/>
										校属管理员
									</td>
								</tr>
								<tr>
									<td align="right" class="tdbg">
										<b>上级菜单:</b>
									</td>
									<td align="left">
										<input name="formMap.supperMenuId" class="easyui-combotree"  value="<s:property value='menu.menu.id'/>"  id="superId" cascadeCheck="false"  required="true" missingMessage="上级菜单不能为空!" style="width:252px" />
									</td>
								</tr>

 

我们再看看demo里<input id="cc" class="easyui-combotree" url="tree_data.json" value="2" required="true" style="width:200px;">

其中tree_data.json的内容如下:

[{
	"id":1,
	"text":"Folder1",
	"iconCls":"icon-ok",
	"children":[{
		"id":2,
		"text":"File1",
		"checked":true
	},{
		"id":3,
		"text":"Folder2",
		"state":"open",
		"children":[{
			"id":4,
			"text":"File3",
			"attributes":{
				"p1":"value1",
				"p2":"value2"
			},
			"checked":true,
			"iconCls":"icon-reload"
		},{
			"id": 8,
			"text":"Async Folder",
			"state":"closed"
		}]
	}]
},{
	"text":"Languages",
	"state":"closed",
	"children":[{
		"id":"j1",
		"text":"Java"
	},{
		"id":"j2",
		"text":"C#"
	}]
}]

 

一看便知道是JSON对象,这个在前面一个有关JSON的篇章中有讲到,在后台照着生成就ok了

你可能感兴趣的:(JavaScript,json,UI,css)