• coding++ :Layui-监听事件


    在使用layui的form表单做验证提交的时候,如果结合vue,或者是三级联动的时候,就需要做事件监听了。

    具体语法:

    form.on('event(过滤器值)', callback);

    可以用于监听:select,checkbox,switch,radio,submit 的改变

    1):监听select的改变

    复制代码
    <!-- 不用form 用div也可以 -->
    <form class="layui-form">
        <div class="layui-form-item">
            <label class="layui-form-label">下拉选择框</label>
            <div class="layui-input-block">
                <select name="interest" lay-filter="aihao">
                    <option value="0">写作</option>
                    <option value="1">阅读</option>
                    <option value="2">听歌</option>
                    <option value="4">游戏</option>
                </select>
            </div>
        </div>
    </form>
    <script type="text/javascript" src="./layui/layui.js"></script>
    <script type="text/javascript">
    layui.use('form', function(){
        var form = layui.form;
        form.on('select(aihao)',function(data){
            console.log(data);
            console.log(data.elem); //得到select原始DOM对象
            console.log(data.value); //得到被选中的值
            console.log(data.othis); //得到美化后的DOM对象
        });
    });
    </script>
    复制代码

    同理,监听checkbox复选

    复制代码
    form.on('checkbox(filter)', function(data){
        console.log(data.elem); //得到checkbox原始DOM对象
        console.log(data.elem.checked); //是否被选中,true或者false
        console.log(data.value); //复选框value值,也可以通过data.elem.value得到
        console.log(data.othis); //得到美化后的DOM对象
    });
    复制代码

    监听switch开关:

    复制代码
    form.on('switch(filter)', function(data){
      console.log(data.elem); //得到checkbox原始DOM对象
      console.log(data.elem.checked); //开关是否开启,true或者false
      console.log(data.value); //开关value值,也可以通过data.elem.value得到
      console.log(data.othis); //得到美化后的DOM对象
    }); 
    复制代码

    监听radio单选:

    form.on('radio(filter)', function(data){
        console.log(data.elem); //得到radio原始DOM对象
        console.log(data.value); //被点击的radio的value值
    });

    监听submit提交:

    复制代码
    <button lay-submit lay-filter="*">提交</button>
    form.on('submit(*)', function(data){
        console.log(data.elem) //被执行事件的元素DOM对象,一般为button对象
        console.log(data.form) //被执行提交的form对象,一般在存在form标签时才会返回
        console.log(data.field) //当前容器的全部表单字段,名值对形式:{name: value}
        return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
    });
    复制代码

     

  • 相关阅读:
    新手Android开发:onclicklistener到底怎么用?
    Myeclipse中web project 与java project区别
    <jsp:directive.page import=""/>的用法和解释
    怎样在myeclipse下,打开已有的项目
    有史以来最简单的三层实例(C#)
    show()跟showdialog()的区别
    献给和我一样的Java初学者——用UltraEdit代替“笨重”的IDE,实现轻巧编程!
    数据库连接错误——请求失败或服务器未及时响应
    说说二级C++
    十一张图让你轻松学会用VS打包
  • 原文地址:https://www.cnblogs.com/codingmode/p/11770887.html
Copyright © 2020-2023  润新知