关于layui js重新渲染的问题记录

使用layui的页面需要js添加元素,其中元素中的控件需要重新渲染一下,自己踩得坑是:在浏览器复制的html元素copy到js里面直接append,其中的date控件有多余的lay-key="1"没有注意,导致了渲染后时间框一直无效。贴上渲染的代码记录一下:

//初始化
layui.use(['form', 'layer', 'laydate'],
function() {
    $ = layui.jquery;
    var form = layui.form,
    layer = layui.layer,
    laydate = layui.laydate;
    //执行多个laydate实例
    lay('.layui-date').each(function() {
        laydate.render({
            elem: this,
            format: 'yyyy-MM-dd',
            type: 'date',
            trigger: 'click'
        });
    });
    //监听提交
    form.on('submit(add)',
    function(data) {});

});

//js 动态添加元素
function add(){
			var num=$(".formDiv").length;
			var str="*****";//此处代码复制的浏览器html 没有仔细检查!
			$("#formData").append(str);
			renderDate();
			layui.form.render();
		}
		
		function renderDate() {
		//layui多个日期渲染
		layui.use('laydate', function(laydate) {
			lay('.layui-date').each(function() {
				laydate.render( {
					elem : this, //指定元素
					format : 'yyyy-MM-dd',
					type : 'date',
					trigger : 'click'
				});
			});
		});

	}

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值