淺談layui 表單元素的選中問題
layui對(duì)表單元素都作了美化,比如下拉列表,單選框,多選框.對(duì)表單美化后相應(yīng)元素的操作,其實(shí)是在layui處理過后的div上操作,不能真的反映在原始我們編寫的表單的元素上.這也會(huì)出現(xiàn)一個(gè)問題,如果想用JS對(duì)表單做些預(yù)處理,怎么做?操作原始的元素并不會(huì)展現(xiàn)在layui處理過的表單中的,那我們就對(duì)layui處理過的表單動(dòng)手
這里要提兩個(gè)我用過的,一個(gè)是單選框,一個(gè)是下拉列表
* 單選框,layui美化后,對(duì)應(yīng)的type=radio的input項(xiàng)隱藏,在input之后追加了一個(gè)div,里面用i標(biāo)簽美化,所以我們需要做的事找到目標(biāo)單選框的臨近i標(biāo)簽,然后觸發(fā)它的click事件
* 下拉框,layui把下拉框美化成了一個(gè)dl,每一個(gè)option標(biāo)簽都變成了一個(gè)dd標(biāo)簽表示,其中value更改為lay-value屬性,我們要做的就是找到下拉框?qū)?yīng)的dl標(biāo)簽,將符合要求值lay-value的dd的click事件觸發(fā)
完整代碼:
<!DOCTYPE html> <html> <!-- 防止IE提示允許阻止的內(nèi)容--> <!-- saved from url=(0014)about:internet --> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>layui-form下單選框的監(jiān)聽問題</title> <link rel="stylesheet" type="text/css" href="layui.css" rel="external nofollow" > <script src="jquery.js" type="text/javascript"></script> <script src="layui.js" type="text/javascript"></script> <style> .layui-form #layer-photos img { max-width: 200px; } .layui-form .industryCheckbox li { float: left; width: 33%; } </style> </head> <body> <!--頭部logo以及登錄注冊(cè)開始--> <div class="boxWrap"> <p class="boxTitle">投資需求</p> <div class="formWrap"> <form class="layui-form"> <!-- 左右兩列左側(cè)容器 --> <div class="form-left"> <div id="openedDiv" class="layui-form-item"> <label class="layui-form-label"><span class="star">*</span>是否公開:</label> <div class="layui-input-block"> <input type="radio" name="opened" value="0" title="是"> <input type="radio" name="opened" value="1" title="否" checked=""> </div> </div> </div> <div class="layui-form-item clearfix"> <div class="layui-input-block buttonWrap"> <button class="layui-btn" lay-submit lay-filter="*"> 提 交 </button> <button type="button" lay-close class="layui-btn layui-btn-primary closeBtn"> 關(guān) 閉 </button> </div> </div> </form> </div> </div> <script> $(function () { //原始監(jiān)聽事件開始 // $(":radio[name='opened']").click(function () { // console.log("1111111"); // }); //原始監(jiān)聽事件結(jié)束 //現(xiàn)在監(jiān)聽事件開始 $("#openedDiv div i").click(function () { var open_check_value = $("input[name='opened']:checked").val() console.log(open_check_value); }); //現(xiàn)在監(jiān)聽事件結(jié)束 //驗(yàn)證是否會(huì)影響form表單的正常提交 layui.use('form', function () { var form = layui.form; form.on('submit(*)', function (data) { console.log("submit"); return false; //阻止表單跳轉(zhuǎn)。如果需要表單跳轉(zhuǎn),去掉這段即可。 }); }); }); </script> </body> </html>
以上這篇淺談layui 表單元素的選中問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
layui-table獲得當(dāng)前行的上/下一行數(shù)據(jù)的例子
今天小編就為大家分享一篇layui-table獲得當(dāng)前行的上/下一行數(shù)據(jù)的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-09-09Javascript 更新 JavaScript 數(shù)組的 uniq 方法
2008-01-01js控制文本框只能輸入中文、英文、數(shù)字與指定特殊符號(hào)的實(shí)現(xiàn)代碼
下面小編就為大家?guī)硪黄猨s控制文本框只能輸入中文、英文、數(shù)字與指定特殊符號(hào)的實(shí)現(xiàn)代碼。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-09-09uniapp頁(yè)面間傳參的幾種方法實(shí)例總結(jié)
在進(jìn)行頁(yè)面的跳轉(zhuǎn)的時(shí)候,往往需要我們將一些參數(shù)攜帶著傳遞過去,下面這篇文章主要給大家介紹了關(guān)于uniapp頁(yè)面間傳參的幾種方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12js字符串轉(zhuǎn)換成數(shù)字與數(shù)字轉(zhuǎn)換成字符串的實(shí)現(xiàn)方法
本篇文章主要是對(duì)js字符串轉(zhuǎn)換成數(shù)字與數(shù)字轉(zhuǎn)換成字符串的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2014-01-01TypeScript開發(fā)小狀況記錄之選且只選一個(gè)
在開發(fā)中需要定義一個(gè)對(duì)象的類型,此類型必須包含某n個(gè)字段中的其中一種,這篇文章主要給大家介紹了關(guān)于TypeScript開發(fā)小狀況記錄之選且只選一個(gè)的相關(guān)資料,需要的朋友可以參考下2022-10-10