前端LayUI监听事件实例代码汇总

 更新时间:2024年08月13日 09:58:01   作者:下页、再停留  
在layui中,我们可以通过layui提供的监听方法来对按钮事件进行,监听,下面这篇文章主要给大家介绍了关于前端LayUI监听事件的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

一、监听单选按钮事件

点击资源类型单选按钮时,请求后台接口,把接口返回的内容追加到选择资源下拉框内

HTML

<div class="layui-form-item">
	<label class="layui-form-label">资源类型:</label>
	<div class="layui-input-inline" style="width: 50%">
		<input type="radio" name="kind" lay-filter="kindradio" value="1" title="课件">
		<input type="radio" name="kind" lay-filter="kindradio" value="2" title="视频">
	</div>
</div>

<div class="layui-form-item">
	<label class="layui-form-label">选择资源:</label>
	<div class="layui-input-inline" style="width: 50%">
		<select name="public_kejian_id" lay-search="" lay-filter="source"  lay-verify="required" id="kejian_opt">
									
		</select>
	</div>
</div>

JQ

// 监听
form.on('radio(kindradio)',function (data) {
	// 清空下拉框内容
	$('#kejian_opt').empty();
	var section_id = $('[name="section_id"]').val()
	console.log(data)	
	$.ajax({
		url:'getKejianVideo',
		type:'POST',
		dataType:'JSON',
		data:{kind:data.value,section_id:section_id},
		success:function (res) {
			console.log(res)
			if (res.code == '200') {
				if (data.value == '1') {
					var tag = '课件';
				}else if (data.value == '2') {
					var tag = '视频';
				}
				var html = "<option value=''>--直接选择或搜索选择--</option>";  
                $(res.data).each(function (v, k) {  
                    html += "<option value='" + k.id + "'>【"+tag+"】"+k.filename+"</option>";  
                });  
                //把遍历的数据放到select里面  
                $("#kejian_opt").append(html);
			}else{
				layer.msg(res.message)
			}  
			//重新刷新了一下下拉框  
            form.render('select'); 
		}
	})
})

二、监听下拉框事件

HTML

<select name="public_kejian_id" lay-search="" lay-filter="source"  lay-verify="required" id="kejian_opt">
									
</select>

JQ  获取当前选中的value值和对应的文本

// 监听下拉框
form.on('select(source)',function (data) {
	console.log('选中的id:'+data.value)
	var selectedText = data.elem[data.elem.selectedIndex].text;
	console.log('选中的文字:' + selectedText);
})

附:layui表单提交了多次的两个原因

1. js文件引用了多次

使用layui需要引用layui.js,有的会引用layui.all.js。

如果使用layui默认的表单提交方式,且你的上述js文件同时引用,或者重复引用,那么就会导致表单渲染多次,就会导致表单提交多次的情况。

// layui监听提交
  form.on('submit(demo1)', function(data){
    layer.alert(JSON.stringify(data.field), {
      title: '最终的提交信息'
    })
    return false;
  });

引用的时候,注意不要同时引用layui.js和layui.all.js。如果自己的页面需要引入其他的页面,那么也要注意你需要引入的页面中是否已经引用过layui.js了,避免重复引用。

2. 触发提交操作的事件出现在<form></form>内

如果你是通过自己实现触发事件来提交的,那么你触发事件的提交按钮不能再form标签内。

例如有如下代码

<form class="form-horizontal layui-form" role="form"  lay-filter="example">
	<label for="username" class="col-sm-4 control-label">姓名:
        <input type="text" name="username" id="username" value="" class="form-control">
    </label>
	<button class="layui-btn btn-info" id="submit">提交</button>
</form>
<script>
	$("#submit").click(function () {
        var username = $("#username").val();
        $.ajax(.....);   // 省略ajax提交
    });
</script>

触发提交事件的按钮是在<form>标签内部的,所以当点击提交之后,也会触发两次提交。

将提交按钮放到<form>标签外就可以防止多次提交了。

总结 

到此这篇关于前端LayUI监听事件的文章就介绍到这了,更多相关前端LayUI监听事件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • jQuery源码分析之sizzle选择器详解

    jQuery源码分析之sizzle选择器详解

    jquery从1.3开始,使用了新的选择器–sizzle。效率超过了以前的jquery版本的其他选择器。下面这篇文章主要介绍了jQuery源中sizzle选择器的相关资料,文中介绍的很详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-02-02
  • jQuery的框架介绍

    jQuery的框架介绍

    jQuery使用有一段时间了,但是有一些API的实现实在想不通。小编参考相关资料源码,现在把我的学习过程和收获分享给大家
    2016-05-05
  • jquery中append()与appendto()用法分析

    jquery中append()与appendto()用法分析

    这篇文章主要介绍了jquery中append()与appendto()用法分析,以实例的形式分析了jquery中append()与appendto()的具体语法与详细用法,需要的朋友可以参考下
    2014-11-11
  • jQuery.clean使用方法及思路分析

    jQuery.clean使用方法及思路分析

    jQuery.clean源码分析包括:jQuery.clean使用方法、思路分析及源码注释分析感兴趣的朋友可以参考下
    2013-01-01
  • ASP.NET jQuery 实例18 通过使用jQuery validation插件校验DropDownList

    ASP.NET jQuery 实例18 通过使用jQuery validation插件校验DropDownList

    这节我们还可以通过直接设置DropDownList属性来设置jQuery validation插件的校验规则和提示信息
    2012-02-02
  • jQuery实现伸展与合拢panel的方法

    jQuery实现伸展与合拢panel的方法

    这篇文章主要介绍了jQuery实现伸展与合拢panel的方法,可实现操作div层的平滑收缩与展开的功能,涉及jQuery中next、slideUp、slideDown等方法的使用技巧,非常简单实用,需要的朋友可以参考下
    2015-04-04
  • jquery实现图片裁剪思路及实现

    jquery实现图片裁剪思路及实现

    JS,jquery不能实现图片的裁剪,只是显示了一个假象,在服务器上用获得的各个坐标值,以及原始图片,用JAVA进行裁剪
    2013-08-08
  • jQuery UI AutoComplete 使用说明

    jQuery UI AutoComplete 使用说明

    在 jQuery UI 的最近更新中增加了自动完成控件 AutoComplete,这为我们提供了又一个强大的开发工具,这里介绍一下这个控件的使用方式。
    2011-06-06
  • jquery $.trim()去除字符串空格的实现方法【附图例】

    jquery $.trim()去除字符串空格的实现方法【附图例】

    下面小编就为大家带来一篇jquery $.trim()去除字符串空格的实现方法【附图例】。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-03-03
  • Jquery ajax基础教程

    Jquery ajax基础教程

    这篇文章主要介绍了Jquery ajax基础教程的相关资料,需要的朋友可以参考下
    2015-11-11

最新评论