做了個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彈出框,點擊回車,觸發確定事件的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
|
新聞熱點
疑難解答