MapleMei

MapleMei

140飞吻 2016-11-04 加入 来自朝阳

(WEB爱好者)

MapleMei 最近的提问

MapleMei 最近的回答

  • 7天前求问急急急求问急急急搜索选择框怎么获取选中的值 我想用ajax把选中的值传给后台,不想用表单中回答:

  • 7天前angular select 使用了layui组件之后,绑定的值不能控制下拉框的选择了,如图中回答:

    如果angular发现值发生了变化, 用layui.form().render() 重新渲染吧~
  • 7天前layer弹窗只能用Url传参?中回答:

    localStorage
  • 7天前layui switch开关怎么通过js操作改变状态中回答:

    方法1: 修改原始input的checked状态, 重新渲染
    <input type="checkbox" name="xxx" lay-skin="switch" lay-filter="flag">

    layui.jquery('input[name="xxx"]').attr('checked', 'checked'); //改变开关为 开
    layui.jquery('input[name="xxx"]').removeAttr('checked'); //改变开关为 关

    //重新渲染
    layui.form().render('checkbox');
    方法2: 直接修改渲染后的div class
    <input type="checkbox" name="xxx" lay-skin="switch" lay-filter="flag">

    layui.jquery('input[name="xxx"]').next().addClass('layui-form-onswitch'); //开
    layui.jquery('input[name="xxx"]').next().removeClass('layui-form-onswitch'); //关
  • 7天前angular select 使用了layui组件之后,绑定的值不能控制下拉框的选择了,如图中回答:

    Layui的select是动态渲染的渲染后是dl dd的形式, angular绑定的是原始的select对象
  • 7天前用$("this").addClass('active').si中回答:

    $("this")  ???
    $(this) 吧
  • 9天前layer.promit 里面如何只能输入数字啊?求解中回答:

    好好看下文档哈~~
    http://www.layui.com/doc/modules/layer.html#layer.prompt
    formType: 1, //输入框类型,支持0(文本)默认1(密码)2(多行文本)
  • 9天前求助!!!!!,在tree组件中如何新窗口打开?中回答:

    @老杂毛 文档中的target是对整个树做封装的, 你的target写的位置不对, 要和nodes同级
  • 9天前layui select组件怎么能支持键盘操作?中回答:

    @Destiny612 [汗] 自己封装一个组件用
  • 10天前layer的confirm框,为什么不执行对应的函数呢?中回答:

    @swnuv 你的页面上有几个form表单?
  • 10天前form提交时无法获取data.field值中回答:

    @838
    button 的类型用button, 别用submit就不会自动提交
    <button type="button" lay-submit="" lay-filter="city">提交</button>
  • 10天前form提交时无法获取data.field值中回答:

    submit 提交按钮上加入lay-filter="login"
  • 10天前layui select组件怎么能支持键盘操作?中回答:

    自己写键盘监听事件, 当select获取焦点的时候触发

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title></title>
    <link rel="stylesheet" type="text/css" href="layui-v1.0.9_rls/layui/css/layui.css" />
    </head>

    <body>
    <br />
    <div class="layui-form">
    <div class="layui-form-item">
    <label class="layui-form-label">标签区域</label>
    <div class="layui-input-inline">
    <select class="selectClass" name="city" lay-filter="city">
    <option value="">请选择一个城市</option>
    <option value="010">北京</option>
    <option value="021">上海</option>
    <option value="0571">杭州</option>
    </select>
    </div>
    </div>
    </div>
    <script src="layui-v1.0.9_rls/layui/lay/dest/layui.all.js" type="text/javascript" charset="utf-8"></script>
    <script type="text/javascript">
    var $ = layui.jquery,
    $his = $(''),//记录一下已经选择的
    $div = $('.selectClass').parent();
    $('body').on('keydown', function(e){//监听键盘按下事件
    //上38 下40 回车13
    if($div.find('.layui-form-selected').length){//检测select是否被选中
    if(e.keyCode == 38){//上
    var $this = $div.find('dl .layui-this'), $prev;
    if(!$this.length){
    $this = $div.find('dl dd:last-child');
    $prev = $this;
    }else{
    $prev = $this.prev();
    }
    if(!$prev || !$prev.length){
    $prev = $div.find('dl dd:last-child');
    }
    $div.find('dl .layui-this').removeClass('layui-this');
    $prev.addClass('layui-this')[0].scrollIntoView();
    }else if(e.keyCode == 40){//下
    var $this = $div.find('dl .layui-this'), $next;
    if(!$this.length){
    $this = $div.find('dl dd:eq(0)');
    $next = $this;
    }else{
    $next = $this.next();
    }
    if(!$next || !$next.length){
    $next = $div.find('dl dd:eq(0)');
    }
    $div.find('dl .layui-this').removeClass('layui-this');
    $next.addClass('layui-this')[0].scrollIntoView();
    }else if(e.keyCode == 13){
    $his = $div.find('dl .layui-this');
    $his.click();
    }
    }
    });
    //监听以下blur事件, 如果按下了回车则不用还原,没有按下回车,还原之前选择的元素
    $('body').on('blur', '.layui-form-select', function(){
    $div.find('dl .layui-this').removeClass('layui-this');
    $his.addClass('layui-this');
    })
    //使用以下贤心大大提供的动态监听处理鼠标操作
    layui.form().on('select(city)', function(data){
    $his = $div.find('[lay-value="'+data.value+'"]');
    });
    </script>
    </body>

    </html>
  • 10天前layer的confirm框,为什么不执行对应的函数呢?中回答:

    @swnuv 是这样的, form表单提交onsubmit执行的函数return false; 才不会执行action跳转,现在要在提交过程中加入你想要的操作, 最好不要用onsubmit函数;我是专门用一个button来执行事件的, 不涉及到onsubmit, 你可以试试我写的
  • 10天前lay-search触发了什么事件,自己能不能监听这个事件中回答:

    自己监听input的变化, 然后在重新渲染页面

    <div class="layui-form">
    <div class="layui-form-item">
    <label class="layui-form-label">标签区域</label>
    <div class="layui-input-inline">
    <select class="selectClass" name="city" lay-filter="city" lay-search="">
    <option value="">请选择一个城市</option>
    <option value="010">北京</option>
    <option value="021">上海</option>
    <option value="0571">杭州</option>
    </select>
    </div>
    </div>
    </div>
    <script src="layui-v1.0.9_rls/layui/lay/dest/layui.all.js" type="text/javascript" charset="utf-8"></script>
    <script type="text/javascript">
    var $ = layui.jquery;
    $('body').on('input change', 'input', function(){//监听input的值的变化
    var val = $(this).val();
    //从数据库中获取数据xxxxx, 把获取的数据渲染到页面上
    $('.selectClass').html(
    '<option value="">请选择一个城市</option>'+
    '<option value="010">'+val+'-北京</option>'+
    '<option value="021">'+val+'-上海</option>'+
    '<option value="0571">'+val+'-杭州</option>'
    );
    $(this).blur();
    layui.form().render();
    $('input').click().focus().val(val);
    });
    </script>