时间插件在弹出层render时,会重置input框内的数据

提问 未结 12 314
lmz
lmz 2019-5-9
悬赏:50飞吻
如题,我在弹出层弄了个laydate,要在弹出层使用laydate必须在open成功之后对laydate进行render,但是这样编辑传到弹出层的数据就会被重置,这问题怎么解决,还望大神帮个忙[泪] [泪] [泪]
回帖
  • open成功之后对laydate进行$("").val("");或者table.on('row(test)', function(obj){监听行单双击事件
    console.log(obj.tr) //得到当前行元素对象
    console.log(obj.data) //得到当前行数据
    //obj.del(); //删除当前行
    //obj.update(fields) //修改当前行数据
    form.val("formTest", {表单初始赋值
    "username": "贤心" // "name": "value"
    ,"sex": "女"
    ,"auth": 3
    ,"check[write]": true
    ,"open": false
    ,"desc": "我爱layui"
    })


    });



    1 回复
  • 有一个配置项可以试试看,isInitValue
    0 回复
  • 父层
    layer.open({
    type: 2,
    content: 'http://sentsin.com' ,
    success: function(layero, index) {
    var body = layer.getChildFrame('body', index);
    body.find('#date').val(dateValue);
    }
    });
    弹出层
    laydate.render({
    elem: '#date',
    type: 'datetime',
    range: true,
    });
    0 回复
  • lmz
    2019-5-10
    @哑巴湖大大水怪 我弹出层不是页面,是script 所以要在success后面laydate.render
    0 回复
  • lmz
    2019-5-10
    @岁月小偷 这个是laydate的配置项还是open的呀
    0 回复
  • lmz
    2019-5-10
    @肥到模糊 我要在弹层success后laydate.render
    0 回复
  • lmz
    2019-5-10
    @岁月小偷 用了没反应 emmmm
    0 回复
  • @lmz 那就配置value: '2018-08-18'

    https://www.layui.com/doc/modules/laydate.html#value
    0 回复
  • @lmz 关键看你代码怎么写的了,只要逻辑对写的对,是否在layer中这个是没有任何关系的
    0 回复
  • lmz
    2019-5-10
    @哑巴湖大大水怪 没有用 我的代码是这样:
      var time = function () {
    var endDate3 = laydate.render({
    elem: '#medManuStart', //选择器结束时间
    type: 'date',
    isInitValue:false,
    btns: ['now', 'confirm'],
    min: "1970-1-1", //设置min默认最小值
    done: function (value, date) {
    startDate3.config.max = {
    year: date.year,
    month: date.month - 1, //关键
    date: date.date,
    }
    }
    });
    var startDate3 = laydate.render({
    elem: '#medProStart',
    type: 'date',
    isInitValue:false,
    btns: ['now', 'confirm'],
    max: "2099-12-31", //设置一个默认最大值
    done: function (value, date) {
    endDate3.config.min = {
    year: date.year,
    month: date.month - 1, //关键
    date: date.date,
    };
    }
    });
    }
    layer.open({
    type: 1,
    name: 'editMed',
    title: '编辑药品',
    content: laytpl($("#layui-form").html()).render(obj),
    area: ['80%', '88%'],
    success: function (layero, index) {
    time();
    console.log(obj.medStartDate);
    sonIndex = index;
    medType.medPreCode = '0';
    editForm(medType, "type1");
    if ($("#type1").val() != '') {
    medType.medPreCode = $("#type1").val();
    editForm(medType, "type2")
    }
    editForm2();
    },
    })
    0 回复