jquery easyUI第一篇【介绍、入门、使用经常使用的组件】


tags: web前端库javascript


什么是easyUI

咱们能够看官方对easyUI的介绍:css

这里写图片描述

easyUI就是一个在Jquery的基础上封装了一些组件....咱们在编写页面的时候,就能够直接使用这些组件...很是方便...easyUI多用于在后台的页面上...html

在学习easyUI以前,我已经学过了bootstrap这么一个前端的框架了...所以学习easyUI并不困难....大多状况下,咱们只要查询文档就能够找到对应的答案了。前端

easyUI快速入门

首先咱们得去下载easyUI的资料...java

而后在咱们把对应的文件导入进去项目中,以下图:jquery

这里写图片描述

在html文件的body标签内,写上以下的代码:web

<!-- 第一:写一个普通div标签 第二:提倡为div标签取一个id属性,未来用jquery好定位 第三:为普通div标签添加easyui组件的样式 全部的easyui组件的样式均按以下格式设置: easyui-组件名 第四:若是要用easyui组件自身的属性时,必须在普通标签上书写data-options属性名, 内容为,key:value,key:value,若是value是string类型加引号,外面双引号, 则里面单引号 注意:要在普通标签中书写data-options属性的前提是:在普通标签上加class="easyui-组件名" 属性值大小写都可 -->
	
	
	<div id="xx" class="easyui-panel" style="width:500px;height:300px;padding:15px" title="个人面板" data-options="iconCls:'icon-save',collapsible:true,minimizable:false,maximizable:true">
	
		这是个人第一个EasyUI程序
		
	</div>
复制代码

效果:json

这里写图片描述

关于样式的属性咱们都会在data-options这个属性上设置的。bootstrap


除了指定 class="easyui-panel"这样的方式来使用easyUI的组件,咱们还可使用javascript的方式来动态生成...代码以下所示:浏览器

<div id="p2" style="padding:10px;">
    <p>panel content.</p>
</div>

<script type="text/javascript"> $('#p2').panel({ width: 500, height: 150, title: 'My Panel', border: true, collapsible: true }); </script>

复制代码

在使用easyUI的组件的时候,默认的是英文格式的。若是咱们想要变成是中文格式,能够到如下的目录找到对应的JS,在项目中导入进去就好了!

这里写图片描述

语法

这里写图片描述


layout布局

layout可以帮助咱们布局..

<!-- 布局 -->
		<div id="layoutID" style="width:700px;height:500px" class="easyui-layout" data-options="fit:true">
			
			<!-- 区域面板--北边 -->
			<div data-options="region:'north',title:'北边',split:true,border:true,iconCls:'icon-remove',collapsible:true" style="height:100px;"></div>   
			
			<!-- 区域面板--南边 -->
			<div data-options="region:'south',title:'South Title',split:true" style="height:100px;"></div>   
			
			<!-- 区域面板--东边 -->
			<div data-options="region:'east',iconCls:'icon-reload',title:'East',split:true" style="width:100px;"></div>   
			
			<!-- 区域面板--西边 -->
			<div data-options="region:'west',title:'West',split:true" style="width:100px;"></div>   

			<!-- 区域面板--中间 -->
			<div data-options="region:'center',title:'中间',href:'/js-day05/images/mm.html'" style="padding:5px;background:#eee;"></div>   
			
		</div>
	
	
		<script type="text/javascript"> //easyui调用方法的语法以下:$('selector').组件名('method',parameter);  //浏览器加载jsp页面时触发 $(function(){ //将北边折叠 $('#layoutID').layout('collapse','north'); //休息3秒 window.setTimeout(function(){ //将南边折叠 $("#layoutID").layout("collapse","south"); //将北边展开 $('#layoutID').layout('expand','north'); window.setTimeout(function(){ //将南边展开 $("#layoutID").layout("expand","south"); },3000); },3000); }); </script>
复制代码

这里写图片描述

嵌套

固然了,咱们的页面不可能只有5个模块,可能还有不少子模块。咱们是能够嵌套的。如如下的代码:

<div id="layoutID" class="easyui-layout" data-options="fit:true">
	
		<!-- 北 -->
		<div data-options="region:'north'" style="height:100px"></div>
		 
		<!-- 中 --> 
		<div data-options="region:'center'">
		
			<div class="easyui-layout" data-options="fit:true">
			
				<!-- 西 -->	
			    <div data-options="region:'west'" style="width:200px"></div>
			
				<!-- 中 -->
				<div data-options="region:'center'">
				
					<div class="easyui-layout" data-options="fit:true">
				
						<!-- 北 -->
						<div data-options="region:'north'" style="height:100px"></div>
						
						<!-- 中 -->
						<div data-options="region:'center'"></div>
				
					</div>
				
				</div>
			
			</div>
		
		</div>
	
	</div>		
复制代码

accordion分类

<!-- 容器 -->
	<div id="accordionID" class="easyui-accordion" data-options="fit:false,border:true,animate:true,multiple:false,selected:-1" style="width:300px;height:400px;">   
	    
	    <!-- 面板 -->
	    <div title="标题1" data-options="iconCls:'icon-save'" style="overflow:auto;padding:10px;">   
	       	北京  
	    </div>   
	    <div title="标题2" data-options="iconCls:'icon-reload'" style="padding:10px;">   
	        上海    
	    </div>   
	    <div title="标题3">   
	        广州    
	    </div> 
	    <div title="标题4" data-options="collapsible:true">   
	        深圳    
	    </div> 
	     
	</div> 
	
	
	<script type="text/javascript"> //当浏览器加载web页面时触发 $(function(){ //增长一个面板 //$('selector').plugin('method', parameter);  $("#accordionID").accordion("add",{ "title" : "标题5", "iconCls" : "icon-add", "content" : "武汉", "selected" : false }); //休息3秒 window.setTimeout(function(){ //移除标题1面板 $("#accordionID").accordion("remove",0); //取消面板2选中 $("#accordionID").accordion("unselect",0); //面板3选中 $("#accordionID").accordion("select",1); },3000); }); </script>
复制代码

这里写图片描述


有格式的按钮linkbutton

<a id="btn_add" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-add'">增长部门</a><p> 
	<a id="btn_find" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-search'">查询部门</a><p> 
	<a id="btn_update" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-edit'">修改部门</a><p> 
	<a id="btn_delete" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-remove'">删除部门</a><p>
	
	
	
	
	
	<script type="text/javascript"> //定位4个按钮 $("a").click(function(){ //获取你所单击的按钮的标题 var title = $(this).text(); //去空格 title = $.trim(title); //显示 alert(title); }); </script>

复制代码

这里写图片描述


选项卡tabs

<!-- 容器 -->
	<div id="tabsID" class="easyui-tabs" style="width:500px;height:250px;" data-options="plain:false,fit:false,border:true,tools:[ { iconCls:'icon-add', handler:function(){ alert('添加') } }, { iconCls:'icon-save', handler:function(){ alert('保存') } } ],selected:-1">   
	    
	    <!-- 选项卡 -->
	    <div title="标题1" style="padding:20px">   
	        tab1<br/>
	    </div>   
	    <div title="标题2" data-options="closable:true" style="overflow:auto;padding:20px;">   
	        tab2    
	    </div>   
	    <div title="标题3" data-options="iconCls:'icon-reload',closable:true" style="padding:20px;">   
	        tab3    
	    </div>   
	</div>  
	
复制代码

这里写图片描述


分页pagination

<!-- 静态方式建立pagination <div id="paginationID" class="easyui-pagination" data-options="total:2000,pageSize:10" style="background:#efefef;border:1px solid #ccc;"></div> -->
	
	<div id="paginationID" style="background:#efefef;border:1px solid #ccc;width:800px">
	</div> 
	
	<script type="text/javascript"> //total表示总记录数 //pageSize表示每页显示多少条记录 //pageNumber表示当前页号 //pageList表示可供选择的每页显示多少条记录,pageSize变量的值必须属性pageList集合中的值之一 $("#paginationID").pagination({ "total" : 100, "pageSize" : 10, "pageNumber" : 1, "pageList" : [10,20], "layout" : ['list','sep','first','prev','manual','next','last','links'] }); </script>
	
	<script type="text/javascript"> $("#paginationID").pagination({ "onSelectPage" : function(pageNumber,b){ alert("pageNumber=" + pageNumber); alert("pageSize=" + b); } }); </script>

复制代码

这里写图片描述


提示框validatebox

<div style="margin:200px"></div>
	
	姓名:<input id="nameID"/><p/>
	
	<script type="text/javascript"> $("#nameID").validatebox({ required : true, validType : ['length[1,6]','zhongwen'] }); </script>
	<script type="text/javascript"> //自定义规则:zhongwen $.extend($.fn.validatebox.defaults.rules, { //zhongwen规则名 zhongwen: { //validator验证体  //value表示用户在文本框中输入的内容 validator: function(value){ //若是符合中文规则  if(/^[\u3220-\uFA29]*$/.test(value)){ return true; } }, //若是不符合中文规则,如下就是提示信息  message: '姓名必须为中文' } }); </script>
	
	邮箱:<input id="emailID"/><p/>

	<script type="text/javascript"> $("#emailID").validatebox({ required : true, validType : ['length[1,30]','email'] }); </script>

	密码:<input id="passwordID"/><p/>

	<script type="text/javascript"> $("#passwordID").validatebox({ required : true, validType : ['length[6,6]','english'] }); </script>
	<script type="text/javascript"> $.extend($.fn.validatebox.defaults.rules, { english: { validator: function(value){ if(/^[a-zA-Z]*$/.test(value)){ return true; } }, message: '密码必须为英文' } }); </script>
	
复制代码

这里写图片描述


ComboBox下拉列表框

<!-- 城市: <select id="cityID" class="easyui-combobox" name="city" style="width:200px;"> <option>aitem1</option> <option>bitem2</option> <option>bitem3</option> <option>citem4</option> <option>citem5</option> <option>citem4</option> <option>ditem5</option> <option>ditem4</option> <option>ditem5</option> <option>ditem4</option> <option>ditem5</option> <option>eitem4</option> <option>eitem5</option> </select> -->	
	
	
	
	城市:
	<input id="cityID" name="city"/>  
	
	<script type="text/javascript"> //url表示请求的路径 //valueField表示传到服务器的值,看不见的 //textField表示页面中显示的值,看得见 $("#cityID").combobox({ url : "../json/city.json", valueField :"id", textField : "name" }); </script>
	<script type="text/javascript"> $(function(){ //为下拉组合框设置值 $("#cityID").combobox("setValue","长沙"); }); </script>
	
复制代码

咱们的json须要的格式也能够在文档中找到,咱们只要对照着来写就好了。

这里写图片描述

[
  {    
    "id":1,    
    "name":"北京"   
  },
  {    
    "id":2,    
    "name":"上海"   
  },
  {    
    "id":3,    
    "name":"广州"   
  },
  {    
    "id":4,    
    "name":"深圳"
  },
  {    
    "id":5,    
    "name":"武汉"   
  }
]  
复制代码

DateBox日期输入框

入职时间:
	<input id="dd" type="text"/>
	<script type="text/javascript"> $("#dd").datebox({ required : true }); </script>
	<script type="text/javascript"> $("#dd").datebox({ onSelect : function(mydate){ var year = mydate.getFullYear(); var month = mydate.getMonth() + 1; var date = mydate.getDate(); alert(year+ "年" + month + "月" + date + "日"); } }); </script>
	
复制代码

这里写图片描述


NumberSpinner数字微调

商品数量:
	<input id="ss" style="width:80px;"> 
	<script type="text/javascript"> $("#ss").numberspinner({ min : 1, max : 100, value : 1 }); </script>
	<p/>
	你一共购买了<span id="num">1</span>个商品
		
		
	<script type="text/javascript"> $("#ss").numberspinner({ onSpinUp : function(){ //获取数字微调的当前值 var value = $("#ss").numberspinner("getValue"); //将当前值设置到span标签中 $("#num").text(value).css("color","red"); }, onSpinDown : function(){ //获取数字微调的当前值 var value = $("#ss").numberspinner("getValue"); //将当前值设置到span标签中 $("#num").text(value).css("color","red"); } }); </script>
	
	
	<script type="text/javascript"> $("#ss").keyup(function(xxx){ //将浏览器产生的事件对象设置到myevent变量中 var myevent = xxx; //获取按键的unicode编码 var code = myevent.keyCode; //若是按钮是回车 if(code == 13){ //获取数字微调的当前值,由于$(this)此时表示的是文本框,直接获取value属性值便可 var value = $(this).val(); //将当前值设置到span标签中 $("#num").text(value).css("color","red"); } }); </script>
复制代码

这里写图片描述


Slider滑动条

<div style="margin:100px">
        身高:<span id="tip"></span>
        <p/>
        <div id="ss" style="height:400px;width:600px"></div>
    </div>
    <script type="text/javascript"> $("#ss").slider({ mode : "v", min : 150, max : 190, rule : [ 150,'|',160,'|',170,'|',180,'|',190 ], showTip : true, value : 150 }); </script>
		
	<script type="text/javascript"> $("#ss").slider({ onChange : function(newValue){ if(newValue == 160){ $("#tip").text("合格").css("color","blue"); }else if(newValue == 170){ $("#tip").text("良好").css("color","green"); }else if(newValue == 180){ $("#tip").text("优秀").css("color","pink"); }else if(newValue == 190){ $("#tip").text("卓越").css("color","red"); } } }); </script>
复制代码

这里写图片描述


ProgressBar进度条

<div id="p" style="width:400px;"></div> 
	<script type="text/javascript"> $("#p").progressbar({ width : 1300, height : 100, value : 0 }); </script>	
	
	<input id="startID" type="button" value="动起来" style="width:111px;height:111px;font-size:33px"/>
	
	
	
	
	
	<script type="text/javascript"> //获取1到9之间的随机数,包含1和9 function getNum(){ return Math.floor(Math.random()*9)+1; } </script>
	<script type="text/javascript"> var timeID = null; //函数 function update(){ //获取随机值,例如:3 var num = getNum(); //获取进度条当前值,例如:99 var value = $("#p").progressbar("getValue"); //判断 if(value + num > 100){ //强行设置进度条的当前值为100 $("#p").progressbar("setValue",100); //中止定时器 window.clearInterval(timeID); //按钮正效 $("#startID").removeAttr("disabled"); }else{ //设置进度条的当前值为num+value的和 $("#p").progressbar("setValue",(value+num)); } } //定拉按钮,同时提供单击事件 $("#startID").click(function(){ //每隔300毫秒执行update方法 timeID = window.setInterval("update()",300); //按钮失效 $(this).attr("disabled","disabled"); }); </script>
复制代码

这里写图片描述

Window窗口

<input type="button" value="打开窗口1" id="open1"/>
	<input type="button" value="关闭窗口1" id="close1"/>
	
	<div style="margin:600px"></div>
		
	<div id="window1"></div>
		
	<script type="text/javascript"> //定位打开窗口1按钮,同时添加单击事件 $("#open1").click(function(){ //打开窗口1 $("#window1").window({ title : "窗口1", width : 840, height : 150, left : 200, top : 100, minimizable : false, maximizable : false, collapsible : false, closable : false, draggable : false, resizable : true, href : "/js-day06/empList.jsp" }); }); </script>
	
	<script type="text/javascript"> //定位关闭窗口1按钮,同时添加单击事件 $("#close1").click(function(){ //关闭窗口1 $("#window1").window("close"); }); </script>
复制代码

这里写图片描述

Dialog对话框窗口

<input type="button" value="打开对话框" id="open"/>

	<div style="margin:600px"></div>

	<div id="dd"></div>
	<script type="text/javascript"> $("#open").click(function(){ $("#dd").dialog({ title : "对话框", width : 300, height : 400, left : 200, top : 100, minimizable : false, maximizable : false, collapsible : false, closable : false, draggable : false, resizable : true, toolbar : [ { text:'编辑', iconCls:'icon-edit', handler:function(){alert('edit')} }, { text:'帮助', iconCls:'icon-help', handler:function(){alert('help')} } ], buttons : [ { text:'提交', handler:function(){alert("提交");} }, { text:'关闭', handler:function(){ //关闭对话框 $("#dd").dialog("close"); } } ], href : "/js-day06/easyui/10_form.html" }); }); </script>	
复制代码

这里写图片描述


Messager消息窗口

<input type="button" value="警告框"/><br/>
	<input type="button" value="确认框"/><br/>
	<input type="button" value="输入框"/><br/>
	<input type="button" value="显示框"/><br/>
	
	
	<div style="margin:100px"></div>
	<script type="text/javascript"> //定位全部的button按钮,同时提供单击事件 $(":button").click(function(){ //获取value属性值 var tip = $(this).val(); //去空格 tip = $.trim(tip); //若是警告框的话 if("警告框" == tip){ $.messager.alert("警告框","继续努力","warning",function(){ alert("关闭"); }); }else if("确认框" == tip){ $.messager.confirm("确认框","你确认要关闭该确认框吗?",function(value){ alert(value); }); }else if("输入框" == tip){ $.messager.prompt("输入框","你期希的月薪是多少?",function(sal){ if(sal == undefined){ alert("请输入月薪"); }else{ if(sal<6000){ alert("你的谦虚了"); }else if(sal < 7000){ alert("你加点油了"); }else{ alert("你很不错了"); } } }); }else if("显示框" == tip){ $.messager.show({ showType : "slide", showSpeed : 500, width : 300, height : 300, title : "显示框", msg : "这是内容", timeout : 5000 }); } }); </script>
复制代码

这里写图片描述

Tree树

<ul id="treeID"></ul>
	<script type="text/javascript"> $("#treeID").tree({ url : "/js-day06/json/pro.json" }); </script>
	
复制代码

既然咱们用到了JSON,那么咱们能够在手册看它须要的格式是什么:

这里写图片描述

[
  {    
    "id":1,    
    "text":"广东",
    "state":"closed",
    "children":[
	{
	   "id":11,
	   "text":"广州"	,
           "state":"closed",
           "children":[
	      {
		 "id":111,    
    	         "text":"天河"
	      },	
	      {
		 "id":112,    
    	         "text":"越秀"
	      }	
	   ]
	},
	{
	   "id":12,
	   "text":"深圳"		
	}
    ]
  },    
  {    
    "id":2,    
    "text":"湖南"
  } 
] 
复制代码

这里写图片描述


若是您以为这篇文章帮助到了您,能够给做者一点鼓励

相关文章
相关标签/搜索