easyui 总结

引入easyui

--先引入jquery.js再引入easyui.js
<script src="js/easyUI-1.3.1/jquery-1.8.0.min.js" type="text/javascript"></script>
<script src="js/easyUI-1.3.1/jquery.easyui.min.js" type="text/javascript"></script>
<link href="js/easyUI-1.3.1/themes/icon.css" rel="stylesheet" type="text/css" />
<link href="js/easyUI-1.3.1/themes/default/easyui.css" rel="stylesheet" type="text/css" />

1.Layout

--必须要有region:'center'
<body class="easyui-layout"> <div data-options="region:'north',border:false" style="overflow: hidden; height: 20px; background: url(images/layout-browser-hd-bg.gif) #7f99be repeat-x center 50%;"> ... </div> <div data-options="region:'west',title:'我的菜单',iconCls:'icon-leftmenu',split:true" style="width: 160px; overflow: hidden;"> ... </div> <div data-options="region:'center'" style="overflow: hidden">   ... </div> </body>

2.Tabs

--demo
<div id="tabs" class="easyui-tabs" fit="true" border="false"> <div title="欢迎使用" style="padding: 20px; overflow: hidden;" id="home">
      ... </div>
    <div title="tab1">
      ...
    </div>
</div>

 

--新增一个选项卡
function addTab(subtitle, url, icon) {
if ($("#tabs").tabs('exists', subtitle)) { $('#tabs').tabs('select', subtitle); } else { $('#tabs').tabs('add', { title: subtitle, closable: true, href: url, icon: icon, selected: true }); } }
--关闭一个选项卡
$("#tabs").tabs('close','tab1')

3.Accordion

--demo
<div id="aa" class="easyui-accordion" style="width:300px;height:200px;"> <div title="Title1" data-options="iconCls:'icon-save'" style="overflow:auto;padding:10px;"> <h3 style="color:#0099FF;">Accordion for jQuery</h3> <p>Accordion is a part of easyui framework for jQuery. It lets you define your accordion component on web page more easily.</p> </div> <div title="Title2" data-options="iconCls:'icon-reload',selected:true" style="padding:10px;"> content2 </div> <div title="Title3"> content3 </div> </div>
--生成accordion型菜单 (只能两层)
   --后台json      
private void GetMenus(HttpContext context)    { BLL.System.Menu b_menu = new BLL.System.Menu(); DataSet ds = b_menu.GetListByempID(emp_id); StringBuilder sb = new StringBuilder(); string strJSON = ""; sb.Append("{\"menus\":["); if (ds.Tables[0].Rows.Count > 0) { DataView dv = new DataView(ds.Tables[0]); dv.RowFilter = " menu_pid=0"; dv.Sort = " menu_sort "; for (int i = 0; i < dv.Count; i++) { if (i > 0) { sb.Append(","); } sb.Append("{\"menu_id\":\"" + dv[i]["menu_id"] + "\",\"menu_icon\":\"" + dv[i]["menu_icon"] + "\",\"menu_name\":\"" + dv[i]["menu_name"] + "\","); sb.Append("\"menus\":"); DataView dv2 = new DataView(ds.Tables[0]); dv2.RowFilter = " menu_pid=" + dv[i]["menu_id"]; dv2.Sort = " menu_sort"; if (dv2.Count > 0) { strJSON = JsonConvert.SerializeObject(dv2.ToTable(), new DataTableConverter()); sb.Append(strJSON); } else { sb.Append("\"\""); } sb.Append("}"); } sb.Append("]}"); } strJSON = sb.ToString() == "{\"menus\":[" ? "[]" : sb.ToString(); context.Response.Write(strJSON); }
    

 

//初始化左侧
        function initleftMenu() {
            $("#leftside").accordion();
            $.post('.....'),
             function (json) {
                 if (JSON.stringify(json) != '[]') {
                     $.each(json.menus, function (i, n) {
                         var menulist = '';
                         menulist += '<ul>';
                         $.each(n.menus, function (j, o) {
                             menulist += '<li><div><a ref="' + o.menu_id + '" href="javascript:void(0)" rel="' + o.menu_linkaddress + '" ><span class="' + o.menu_icon + '" >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="nav">' + o.menu_name + '</span></a></div></li> ';
                         })
                         menulist += '</ul>';
                         $('#leftside').accordion('add', {
                             title: n.menu_name,
                             content: menulist,
                             iconCls: n.menu_icon,
                             selected: n.menu_name == '和谐' ? true : false
                         });
                     }
                )
                 }
                 $('.easyui-accordion li a').click(function () {
                     var tabTitle = $(this).children('.nav').text();
                     var url = $(this).attr("rel");
                     var menu_id = $(this).attr("ref");
                     var s = $(this).children('span');
                     var icon = s.attr('class');
                     addTab(tabTitle, url, icon); //创建tabs
                     $('.easyui-accordion li div').removeClass("selected");
                     $(this).parent().addClass("selected");
                 }).hover(function () {
                     $(this).parent().addClass("hover");
                 }, function () {
                     $(this).parent().removeClass("hover");
                 });
             }, 'json')
        };

 4.Menu

--简单的右键菜单绑定
$(function () {
            $(document).bind('contextmenu', function (e) {
                $('#mm').menu('show', {
                    left: e.pageX,
                    top: e.pageY

                })
                return false;
            })
    })
$(
'#mm-tabclose').click(function () { var tab = $('#tabs').tabs('getSelected'); var index = $('#tabs').tabs('getTabIndex', tab); $('#tabs').tabs('close', index); });
<div id="mm" class="easyui-menu" style="width:100px;"> <div id=mm-tabclose>关闭当前</div> <div href='http://www.baidu.com'>百度</div> <div> <span>Open</span> <div style="width:100px;"> <div><b>Word</b></div> <div>PowerPoint</div> </div> </div> <div data-options="iconCls:'icon-save'">Save</div> <div class="menu-sep"></div> <div>Exit</div> </div>

5.Form

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

6.Validatebox

<input id="vv" class="easyui-validatebox" data-options="required:true,validType:'email'" />  

$.extend($.fn.validatebox.defaults.rules, {   
    equals: {   
        validator: function(value,param){   
            return value == $(param[0]).val();   
        },   
        message: 'Field do not match.'  
    }, 
    minLength: {   
        validator: function(value, param){   
            return value.length >= param[0];   
        },   
        message: 'Please enter at least {0} characters.'  
    },
  name: {// 验证姓名,可以是中文或英文
        validator: function (value) {
            return /^[\u0391-\uFFE5]+$/i.test(value) | /^\w+[\w\s]+\w+$/i.test(value);
        },
        message: '请输入姓名'
    }, 
  integer: {// 验证整数         validator: function (value) {             return /^[+]?[0-9]+\d*$/i.test(value);         },         message: '请输入数字'      },
}); 

7.Combobox

       $('#cc').combobox({
                url: '....',
                valueField: 'id',
                textField: 'text',
                width: 100,
                editable: false,
                value: '1',
                multiple,false,
                onLoadSuccess: function () {
                    '...';
                },
                onSelect: function () {
                    '...';
                }
            });

      $('#cc').combobox('getValue');
      $('#cc').combobox('SetValue','1');

8.Datetimebox

$('#dt').datetimebox({   
    value: '3/4/2010 2:3',   
    required: true,   
    showSeconds: false  
});  

9.Dialog

$('#' + _clausediv).show().dialog({
            title: '修改',
            iconCls: 'icon-edit',
            modal: true,
            cache: false,
            resizable: false,
            closed: false,
            closable: true,
            width: 350,
            height: 250,
            buttons: [
        {
            text: '确定',
            iconCls: 'icon-ok',
            handler: function () {
                ...
            }
        }
        ],
            onOpen: function () {
            ...
            },
            onClose: function () {
            ...
            }

        });

10.Messager

$.messager.show({
    title:'提示',
    msg:'操作成功!',
    timeout:5000,
    showType:'slide',
    width:250,
    height:100
});

$.messager.alert('My Title','Here is a info message!','info');

$.messager.confirm('Confirm', 'Are you sure to exit this system?', function(r){
    if (r){
        // exit action;
    }
});

11.DataGrid

--datagrid 多行编辑
     var
_isedit = false; var editRow = []; var checkids = ''; var check_id = []; $('#dg').datagrid({ url: 'ashx/...', rownumbers: true, idField: 'cr_id', fit: true, fitColumns: false, nowrap: false, pagination: true, pageNumber: 1, pageSize: 10, pageList: [10, 20, 40], singleSelect: true, sortName: 'cr_name', striped: false, toolbar: [ { text: '修改', iconCls: 'icon-edit', handler: function () { beginedit(); } }, '-', { text: '保存', iconCls: 'icon-save', handler: function () { saveedit(); } } ], columns: [[ { title: 'id', field: 'cr_id', checkbox: true }, { title: '名称', field: 'cr_name', sortable: true, editor: { type: 'text'} }, { title: '操作', field: 'opt', width: 200, align: 'center', formatter: function (value, row, index) { return '<a href="javascript:opt1(' + index + ');">操作</a>'; } } ]], rowStyler: function (index, row) { if (row.price > 80) { return 'background-color:#FFFFFF'; } }, onAfterEdit: function (rowIndex, rowData, changes) { var rows = $('#dgcht').datagrid('getRows'); var row = _rows[rowIndex]; $('#dgcht').datagrid('getChanges', 'updated'); check_id.push(_row.trainee_id + '{' + _row.trainee_examine); } }); //开始修改 function beginedit() { var rows = $('#dg').datagrid('getSelections'); if (rows.length > 0&&!_isedit) { for (var i = 0; i < rows.length; i++) { var index = $('#dg').datagrid('getRowIndex', rows[i]); $('#dg').datagrid('beginEdit', index); editRow.push(index); } _isedit = true; } } //保存修改 function saveedit() { if (_isedit) { for (var j = 0; j < editRow.length; j++) { $('#dg').datagrid('endEdit', editRow[j]); } checkids = check_id.join(','); $.post( '..' , function (r) { }, 'text' ); _isedit = false; } check_id = []; editRow = []; checkids = ''; }

12.Tree

--树形菜单
function initleftMenu() {
            $('#leftside').tree({
                url: '...',
                onClick: function (node) {
                    if (node.attributes.url != "") {
                        addTab(node.text, node.attributes.url, node.iconCls);
                    }
                }
            })
        }

--异步获取json树
public static string GetMyTreeJsonByTableasyn(DataTable table, string url, string idCol, string txtCol, string rela, int pid,string icon)
        {
            StringBuilder sb = new StringBuilder();
            if (table.Rows.Count > 0)
            {
                sb.Append("[");
                string filter = null;
                if (pid == 0)
                {
                    filter = rela + " =0";
                }
                else
                {
                    filter = rela + "=" + pid;
                }
                DataRow[] rows = table.Select(filter,"menu_sort");
                if (rows.Length > 0)
                {
                    foreach (DataRow row in rows)
                    {
                        sb.Append("{\"id\":" + row[idCol] + ",\"text\":\"" + row[txtCol] + "\",\"state\":\"");
                        if (table.Select(string.Format("{0}='{1}'", rela, row[idCol])).Length > 0)
                        {
                            sb.Append("closed\",\"iconCls\":\"" + row[icon] + "\","+"\"attributes\":{" + "\"url\":" + "\""+row[url]+"\"" + "}");
                        }
                        else
                        {
                            sb.Append("\",\"iconCls\":\"" + row[icon] + "\","+ "\"attributes\":{" + "\"url\":" + "\""+row[url]+"\"" + "}");
                        }
                        sb.Append("},");
                    }
                    sb = sb.Remove(sb.Length - 1, 1);
                }
                sb.Append("]");
            }
            return sb.ToString();
        }
    }

--同步获取json tree
public static string getmytreejsonbytablesyn(DataTable table,string url,string idCol,string txtCol,string rela,int pid ,string icon) { StringBuilder sb = new StringBuilder(); DataRow[] rows = table.Select(rela + "=" + pid); if (rows.Length > 0) { if (pid == 0) { sb.Append("["); } else { sb.Append(",\"children\":["); } foreach (DataRow row in rows) { sb.Append("{"); sb.Append("\"id\":" + row[idCol].ToString() + ","); sb.Append("\"text\":\"" + row[txtCol].ToString() + "\","); sb.Append("\"iconCls\":\"" + row[icon].ToString() + "\""); if(!string.IsNullOrEmpty(row[url].ToString())){ sb.Append(",\"attributes\":{\"url\":\"" + row[url].ToString() + "\"}"); } sb.Append(getmytreejsonbytablesyn(table, url, idCol, txtCol, rela, Convert.ToInt32(row[idCol]), icon)); sb.Append("},"); } sb.Remove(sb.Length - 1, 1); sb.Append("]"); return sb.ToString(); } else { return ""; } }

 

 

转载于:https://www.cnblogs.com/tonyqiu/p/3625889.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值