layui如何實(shí)現(xiàn)監(jiān)聽(tīng)多個(gè)radio事件-創(chuàng)新互聯(lián)

需求如下圖:想要選中單選框3,是單選框3下的復(fù)選框全選

創(chuàng)新互聯(lián)公司-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比河南網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式河南網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋河南地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴(lài)。

layui如何實(shí)現(xiàn)監(jiān)聽(tīng)多個(gè)radio事件

如果 面板信息 不多的話,可以給每個(gè)單選框3添加一個(gè)固定的監(jiān)聽(tīng)事件

但是實(shí)際項(xiàng)目中,不僅僅只有兩個(gè),會(huì)有幾十個(gè),這時(shí)總不能綁定一個(gè)lay-filter,添加一個(gè)form.on('radio(filter)')事件吧

所以在此寫(xiě)了一個(gè)通用的監(jiān)聽(tīng)多個(gè)radio的方法:

// 選取“單選框3”,“單選框3”下的所有內(nèi)容全選
        var flagID = document.querySelectorAll("input[title='單選框3']");
        var aFlagID = new Array();
        for (var j = 0; j < flagID.length; j++) {
            aFlagID.push(flagID[j].id);
        }
        // 監(jiān)聽(tīng)所有title為“單選框3”的radio
        // 注意:此時(shí)title為“單選框3”的radio的id和lay-filter需要設(shè)為一致?。。。?        for (var i = 0; i < aFlagID.length; i++) {
             form.on('radio('+aFlagID[i]+')', function(data) {
                $(data.elem).next().next().children("input").addClass(""+aFlagID[i]+"_other");
                $("."+aFlagID[i]+"_other").attr("checked", "checked");
                $("."+aFlagID[i]+"_other + div").addClass('layui-form-checked');
                element.init();
            });
        }

此處,是通過(guò)id來(lái)獲取每個(gè)radio的lay-filter,將radio的id與lay-filter設(shè)置成一樣的;

$(data.elem)就是當(dāng)前監(jiān)聽(tīng)的DOM元素;這里要注意看瀏覽器已經(jīng)渲染成功的頁(yè)面;

此時(shí)選中的是input元素,即為單選框3,但是由于layui將input美化掉了,所以此input沒(méi)有顯示;

layui如何實(shí)現(xiàn)監(jiān)聽(tīng)多個(gè)radio事件注意看下圖:此時(shí)input下一個(gè)元素才是我們看到的“單選框3”

layui如何實(shí)現(xiàn)監(jiān)聽(tīng)多個(gè)radio事件

在選取元素的時(shí)候一定要找準(zhǔn)元素!

此方法有以下局限性:

1.需要手動(dòng)給每個(gè)“單選框3”設(shè)置id和lay-filter;

2.“單選框3”的id和lay-filter需要一致;

3.獲取元素時(shí)是通過(guò)jQuery方法尋找元素;

4.需要按照不同的頁(yè)面布局變更尋找元素的方式。

以上就是layui監(jiān)聽(tīng)多個(gè)radio事件的方法的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司其它相關(guān)文章!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

分享名稱(chēng):layui如何實(shí)現(xiàn)監(jiān)聽(tīng)多個(gè)radio事件-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://muchs.cn/article48/cocehp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)軟件開(kāi)發(fā)、手機(jī)網(wǎng)站建設(shè)響應(yīng)式網(wǎng)站、App開(kāi)發(fā)、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化