layui页面加载简单模式

注意如果方法在layui加载页面之后进行,需要form.render();重新渲染页面

定义模板id

     form表单id 加载数据id<table id="table" lay-filter="test"></table>


 <select  id="chosen-select" lay-filter="type-select">
	   <option value="" selected="">请选择描述</option>
</select>//加载自定义搜索框

/*为下拉框id="chosen-select"加载数据type,description(类型与描述两个属性)*/

/* $(function(){
	  var html = "";
		$.ajax({
			url: '${ctx}/sys/dict/queryTypeList',
			success : function(data) {
				//加载数据
				for (var i = 0; i < data.length; i++) {
					html += '<option value="' + data[i].type + '">' + data[i].description + '</option>'
				}
				$("#chosen-select").append(html);
			}
		});
});  */

/* 定义事件*/
var tableIns;
 layui.use(['table','laypage'], function(){
	var form = layui.form;
	var table = layui.table;
	var laypage = layui.laypage;
	 /*监听select框     此方法用以监听id="label"的下拉款事件进行搜索
	form.on('select(type-select)', function(data){
		var type = data.value;
		 var storage=window.localStorage;
		 storage["type"]=type;
		var opts = {
					label: $("#label").val(),
			}
		reLoad(opts);
	}); */
	/*渲染数据表格*/
	tableIns = table.render({
	    elem: '#table'        //table绑定数据id
	    ,url: '${ctx}/origin/business/manager_json'
	    ,method: 'post'
	    ,cellMinWidth: 80
	    /* ,height: 'full-100' */
	    ,page:  {
	     layout: ['limit', 'count', 'prev', 'page', 'next', 'skip'] //自定义分页布局
		     // 限定条数   总数、计数  上一页     页     下一页    到第几页、跳
		     ,curr: 1 
		     ,groups: 10 //显示 连续页码
		     ,first: '首页'
		     ,last: '尾页' 
		 }
	    ,even: true //开启隔行背景
	    ,cols: [[ //表头
		      {field: 'id', title: 'ID', width:50, type:'numbers', sort: true}
		      ,{field: 'business_name', title: '企业名称' }
		      ,{field: 'business_mobile', title: '企业电话',  sort: true}
		      ,{field: 'business_addr', title: '企业地址', } 
		      ,{field: 'createdate', title: '创建时间', } 
		      ,{field: 'remarks', title: '备注',}
		      ,{field: 'delflag', title: '状态', width:80, templet: '#status'}
		      ,{fixed: 'right', width:300, align:'center', toolbar: '#toolbar'}
		    ]]
	});

templet:前段模板引擎加载自定义事件(d模板中的属性.name取值)

<script type="text/html" id="status">
	{{# if(d.delflag == 0) { }}
		<button class="layui-btn layui-btn-sm">正常</button>
	{{# } else { }}
		<button class="layui-btn layui-btn-sm layui-btn-danger">禁用</button>
	{{# } }}

toolbar:cols中的属性用来定义操作按钮,

<script type="text/html" id="toolbar">
  	<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="detail">查看</a>
  	<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="edit">编辑</a>
  	<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</script>

	/*监听工具条*/
	table.on('tool(test)', function(obj){ 
		var data = obj.data; /*获得当前行数据*/
		var layEvent = obj.event; /*获得 lay-event 对应的值(也可以是表头的 event 参数对应的值)*/
		var tr = obj.tr; /*获得当前行 tr 的DOM对象*/
		if(layEvent === 'detail'){
		 
		}else if(layEvent === 'del'){
		 	layer.confirm('真的删除行么', function(index){
			    layer.close(index);
			    /*向服务端发送删除指令*/
			    alert(data.id);
			    $.ajax({
					url : prefix + "/delete",
					type : "post",
					data : {'id' : data.id},
					success : function(data) {
						if (data.code == 0) {
							obj.del(); /*删除对应行(tr)的DOM结构,并更新缓存*/
							layer.msg(data.msg);/*后台定义的返回值方法*/
						} else {
							layer.msg(data.msg);
						}
					}
				});
			});
		}else if(layEvent === 'edit'){
		 	/*打开修改页面*/
			openIframe('修改','/update_manager/'+data.id);
		}
	});
});

自定义方法

/新增页面/
function add() {
openIframe(‘增加’,’/add_manager’);
}

>刷新数据    重写刷新方法,不然会走自定义默认方法

/*刷新数据*/
function reLoad(opts) {
	tableIns.reload({
		page: {
			 layout: ['limit', 'count', 'prev', 'page', 'next', 'skip'] //自定义分页布局
		     ,curr: 1 
		     ,groups: 10 //显示 连续页码
		     ,first: '首页'
		     ,last: '尾页' 
	  	} ,where:
	  		opts
	});
}
  • 保存页面方法调用(form提交)

 layui.use(['form'], function(){
    var form = layui.form;
     //监听提交
  form.on('submit(submitForm)', function(data){
	  save();  
  })
});
 /* $("#formSubmit").click(function(){
		save()
}); */
/*保存方法*/
function save() {
$.ajax({
	cache : true,
	type  : "POST",
	url   : "${ctx}/origin/business/save_manager",
	data  : $('#businessForm').serialize(), // 你的formid
	async : false,
	error : function(request) {
		parent.layer.alert("网络超时");
	},
	success : function(data) {
		if (data.code == 0) {
			parent.layer.msg("操作成功");
			parent.reLoad();
			var index = parent.layer.getFrameIndex(window.name);
			parent.layer.close(index);
		} else {
			parent.layer.alert(data.msg);
		}
	}
});

// $(“input:radio[name=‘isVisible’]”).attr(‘checked’, ‘true’);

$("#isVisible").attr(“checked” , “true”)

$("#isVisible").prop(“checked” , “true”)
prop()是 jQuery 1.6 开始新增了一个方法,官方建议具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr()。

在代码中加入debugger执行,可直接进入debug模式

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值