easyUI详解

时间:2023-03-09 17:56:17
easyUI详解

1、EasyUI 是前端框架,封装大量 css和封装大量 JS

2、使用前端框架时,给标签定义class 属性,就会有样式和脚本功能了

3、data-options 属性是定义 easyui 属性的,如果 easyui 提供的属性和 html 标签属性相同,这个属性可以不写在 data-options 中

4、如果效果是静态的建议使用纯 html 标签方式,如果效果是动态建议使用 html 结合 js 方式

5、easyui 中所有脚本功能语法:

  如果该效果(组件)是 abc,控制 abc 的语法

$(“jquery 选择器获取到 abc”).abc({
属性名:值,
事件:function([参数]){}
})

6、如果该效果(组件)是 abc,控制 abc 方法的语法

$(“jquery 选择器获取到 abc”).abc(“方法名”);//调用方法
$(“jquery 选择器获取到 abc”).abc(“方法名”,”参数”);//调用方法

7、EasyUI 适用于后台管理界面,不适用于前台项目页面

8、优点:处理服务器传递过来的 json数据能力比较强,只要服务器传回固定格式的json数据,几乎不用写代码,效果就会呈现出来

注:能复制绝对不手写,html为弱规范,就算写错一个字母也不会报错

easyUI项目案例详解

一、登陆界面(login.jsp)

  1、Panel(面板)  通过纯 html 标签方式创建面板

<div id="p" class="easyui-panel" title="登录"
style="width:400px;height:200px;padding:10px;background:#fafafa;"
data-options="iconCls:'myicon-login'">
<form action="login" method="post" id="login_form">
<table width="225" align="center">
<tr>
<td colspan="2" style="text-align:center;font-size:20px; font-weight:bold">用户管理系统</td>
</tr>
<tr style="height:40px;">
<td>登录名</td>
<td><input type="text" name="username"/> </td>
</tr>
<tr style="height:40px;">
<td>
密码
</td>
<td><input type="password" name="password"/> </td>
</tr>
<tr>
<td colspan="2" align="right">
<a id="login_submit" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-ok'">登录</a>
</td>
</tr>
</table>
</form>
</div>

  2、LinkButton(按钮)

$(function(){
$("#btn").click(function(){
alert('easyui');
});
});

  3、Form(表单)

$('#ff').form('submit', {
url:...,
onSubmit: function(){ },
success:function(data){
alert(data)
}
});

  4、Messager(消息窗口)

$.messager.alert('警告','警告消息');
$.messager.confirm('确认','您确认想要删除记录吗?',function(r){
if (r){
alert('确认删除');
}
});

二、主界面(main.jsp)

  1、Layout(布局)

<body class="easyui-layout">
<div data-options="region:'north',title:'North Title',split: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:'center title'" style="padding:5px;background:#eee;"></div>
</body>

  2、Tree(树)  通过html 结合 js 方式创建树

<ul id="tt"></ul> 
$('#tt').tree({
url:'tree_data.json'
});

  树控件数据格式化

  每个节点都具备以下属性:
    id:节点ID,对加载远程数据很重要。
    text:显示节点文本。
    state:节点状态,'open' 或 'closed',默认:'open'。如果为'closed'的时候,将不自动展开该节点。
    checked:表示该节点是否被选中。
    attributes: 被添加到节点的自定义属性。
    children: 一个节点数组声明了若干节点。

  点击树节点

$('#tt').tree({
onClick: function(node){
alert(node.text); // 在用户点击的时候提示
}
});

  3、Tabs(选项卡)

<div id="tt" class="easyui-tabs" style="width:500px;height:250px;">
<div title="Tab1" style="padding:20px;display:none;">
tab1
</div>
<div title="Tab2" data-options="closable:true" style="overflow:auto;padding:20px;display:none;">
tab2
</div>
<div title="Tab3" data-options="iconCls:'icon-reload',closable:true" style="padding:20px;display:none;">
tab3
</div>
</div>
//如果此标题在选项卡中不存在,则新增选项卡,否则选中此标题对应的选项卡
if($("#tt").tabs("getTab",title)==null){
$('#tt').tabs('add',{
title: '新选项卡面板',
//是否选中选项卡
selected: true,
//是否可以关闭
closable:true,
href:……
});
}else{
$("#tt").tabs("select",title);
}

 三、角色页面(role.jsp)

  1、DataGrid(数据表格)

<table id="dg"></table>  
$('#dg').datagrid({
url:'datagrid_data.json',
columns:[[
{field:'code',title:'Code',width:100},
{field:'name',title:'Name',width:100},
{field:'price',title:'Price',width:100,align:'right'}
]]
});

  数据表格控件数据格式化,分页时需要具备以下属性:

    rows:当前页显示的数据

    total:表中总个数

  toolbar(定义工具栏)

$('#dg').datagrid({
toolbar: [{
iconCls: 'icon-edit',
handler: function(){alert('编辑按钮')}
},'-',{
iconCls: 'icon-help',
handler: function(){alert('帮助按钮')}
}]
});

  2、Dialog(对话框窗口)

<div id="dd">Dialog Content.</div>  
$('#dd').dialog({
title: 'My Dialog',
width: 400,
height: 200,
closed: false,
cache: false,
href: '……',
modal: true
});

四、角色编辑页面(role_edit.jsp)

  1、Form(表单)

$('#ff').form('submit', {
url:...,
onSubmit: function(){
// do some check
// return false to prevent submit;
},
success:function(data){
alert(data)
}
});

  2、Messager(消息窗口)

$.messager.show({
title:'我的消息',
msg:'消息将在5秒后关闭。',
timeout:5000,
showType:'slide'
});