layer的prompt弹出框,点击回车,触发确定事件

做了个prompt弹出框,希望点击确定按钮的时候也能触发确定的事件,用户习惯的原因,在输入框输入框数据后,再重新拿起鼠标点击太麻烦,所以想着点击确定按钮触发事件。


		layer.prompt({title: '请输入数据', formType: 1,
			// 这个是确定按钮的事件
			"success":function(){
				// 键盘事件,判断回车
				$("input.layui-layer-input").on('keydown',function(e){
					if (e.which == 13) {
						// 取输入框数据 和123456 比较
						if("123456" == $(this).val()){
							alert('你点击了回车按钮!');
							layer.close(1);
						}
	                }
				});
			},
			// 点击确定按钮事件
			yes : function(){
				// 取输入框数据
				var pass =$(document.getElementsByClassName('layui-layer-input')[0]).val();
				if("123456" == pass){
					alert('你点击了确定按钮!');s
					layer.close(1);
				}
			}
		});

这个方法必须要有yes,下面一个是网上找的代码,不过不好用

layer.prompt({title: '请输入数据!', formType: 1,
		"success":function(){
			$("input.layui-layer-input").on('keydown',function(e){
				if (e.which == 13) {
					console.log(e.which);
					if("123456" == $(this).val()){
						alert('回车');
						layer.close(1);
					}
                } 
			});
		}}, 
		function(pass, index){
			console.log(index);
			if("123456" == pass){
				alert('确定按钮');
			}
			layer.close(index);
		});     

这个方法之所以不行,是因为点击确定事件后,也会调用success的回调事件,而这个事件中this是不一样的,所以 $(this).val() 会报错,所以我采用的方法是把 确定按钮的回调事件单独写出来 (yes),这样就不会导致冲突了。


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值