layer的prompt弹出框,点击回车,触发确定事件的方法
(编辑:jimmy 日期: 2024/11/27 浏览:3 次 )
做了个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),这样就不会导致冲突了。
以上这篇layer的prompt弹出框,点击回车,触发确定事件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
下一篇:vue按需加载实例详解