午夜国产狂喷潮在线观看|国产AⅤ精品一区二区久久|中文字幕AV中文字幕|国产看片高清在线

    Jquery樹(shù)插件zTree用法入門教程
    來(lái)源:易賢網(wǎng) 閱讀:6228 次 日期:2015-03-13 11:00:38
    溫馨提示:易賢網(wǎng)小編為您整理了“Jquery樹(shù)插件zTree用法入門教程”,方便廣大網(wǎng)友查閱!

    這篇文章主要介紹了Jquery樹(shù)插件zTree用法入門教程,實(shí)例分析了zTree插件的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

    本文實(shí)例分析了Jquery樹(shù)插件zTree用法。分享給大家供大家參考。具體分析如下:

    關(guān)于zTree的介紹就搜吧。

    這個(gè)例子的最終效果如下:

    名單

    Jquery樹(shù)插件zTree用法入門教程 三聯(lián)

    鼠標(biāo)移動(dòng)到一級(jí)目錄時(shí)出現(xiàn)全選鏈接,點(diǎn)擊全選鏈接該目錄下的所有子項(xiàng)都被添加到收件人的文本框中,當(dāng)然點(diǎn)擊單個(gè)子項(xiàng)則添加一個(gè)。至于要添加些什么信息由自己決定。

    1. 下載zTee,頁(yè)面引入jquery.js,根據(jù)功能需求添加zTree相應(yīng)的js和css

    代碼如下:

    <script type="text/javascript" src="js/jquery-1.4.4.min.js"></script>

    <script type="text/javascript" src="js/jquery.ztree.core-3.5.js"></script>

    <script type="text/javascript" src="js/jquery.ztree.excheck-3.5.js"></script>

    <script type="text/javascript" src="js/jquery.ztree.exedit-3.5.js"></script>

    <link rel="stylesheet" href="css/zTreeStyle/zTreeStyle.css" type="text/css">

    jquery.ztree.core-3.5.js:zTree核心包

    jquery.ztree.excheck-3.5.js:復(fù)選框功能包

    jquery.ztree.exedit-3.5.js:編輯功能包

    zTree核心包是必須引入的。

    2. 配置zTree,個(gè)別說(shuō)明見(jiàn)代碼中的注釋

    zTree設(shè)置信息:

    變量:zTree中用到的html標(biāo)簽ID都會(huì)在后面添加以下后綴,如一級(jí)目錄前面的展開(kāi)和關(guān)閉圖片的id為添加IDMark_Switch,其他的摸索吧。

    代碼如下:

    var IDMark_Switch = "_switch",

    IDMark_Icon = "_ico",

    IDMark_Span = "_span",

    IDMark_Input = "_input",

    IDMark_Check = "_check",

    IDMark_Edit = "_edit",

    IDMark_Remove = "_remove",

    IDMark_Ul = "_ul",

    IDMark_A = "_a";

    var setting = {

    view: {

    addHoverDom: addHoverDom,

    removeHoverDom: removeHoverDom

    },

    callback: {

    beforeClick: beforeClick,

    onClick: onClick

    }

    };

    function beforeClick(treeId, treeNode, clickFlag) {

    //alert(treeNode.id);

    var ticketBagNo = treeNode.phone;

    re =new RegExp(ticketBagNo);

    var accept = $("#accept").val();//找到要放數(shù)據(jù)的地方,并測(cè)試是否已經(jīng)存在

    if(!re.test(accept)){

    $("#accept").val(accept+treeNode.name+"<"+ticketBagNo+">,");

    }

    }

    function onClick(event, treeId, treeNode, clickFlag) {

    //alert(clickFlag+"zzz");

    }

    callback中有兩個(gè)回調(diào)函數(shù)

    beforeClick:

    是用于捕獲 勾選 或 取消勾選 之前的事件回調(diào)函數(shù),并且根據(jù)返回值確定是否允許 勾選 或 取消勾選默認(rèn)值:null

    onClick:

    用于捕獲節(jié)點(diǎn)被點(diǎn)擊的事件回調(diào)函數(shù)

    如果設(shè)置了 beforeClick 方法,且返回 false,將無(wú)法觸發(fā) onClick 事件回調(diào)函數(shù)。

    默認(rèn)值:null

    addHoverDom,就是鼠標(biāo)移過(guò)節(jié)點(diǎn)所作出的反應(yīng),我們這里為一級(jí)目錄添加一個(gè)全選功能,addHoverDom是一個(gè)函數(shù):

    代碼如下:

    function addHoverDom(treeId, treeNode) {

    if (!treeNode.children)return;

    if (treeNode.parentNode && treeNode.parentNode.id!=1 ) return;

    var aObj = $("#" + treeNode.tId + IDMark_A);

    if (treeNode.children.length>0) {

    if ($("#diyBtn1_"+treeNode.id).length>0) return;

    if ($("#diyBtn2_"+treeNode.id).length>0) return;//' onclick='allSelect("+treeNode+")

    var editStr = "<a id='diyBtn1_" +treeNode.id+ "' style='margin:0 0 0 5px;color:red;'>全選</a>";

    aObj.append(editStr);

    document.getElementById("diyBtn1_"+treeNode.id).onclick = function() {

    allSelect(treeNode);

    };

    }

    }

    全選allSelect方法:

    代碼如下:

    function allSelect(treeNode){

    if (!treeNode.children)return;

    for(i=0;i<treeNode.children.length;i++){

    var ticketBagNo = treeNode.children[i].phone;

    re =new RegExp(ticketBagNo);

    var accept = $("#accept").val();//找到文本框如果該記錄未添加就添加

    if(!re.test(accept)){

    $("#accept").val(accept+treeNode.children[i].name+"<"+ticketBagNo+">,");

    }

    }

    }

    removeHoverDom:鼠標(biāo)移除節(jié)點(diǎn)所做出的反應(yīng),去掉全選

    代碼如下:

    function removeHoverDom(treeId, treeNode) {

    if (!treeNode.children)return;

    $("#diyBtn1_"+treeNode.id).unbind().remove();

    }

    zTree節(jié)點(diǎn)信息:可以根據(jù)需求動(dòng)態(tài)生成。

    以下為Demo數(shù)據(jù),每個(gè)節(jié)點(diǎn)中的name,phone都可以按照自己的需要進(jìn)行添加或修改,比如你要添加一個(gè)年齡:age="23",但是要注意格式問(wèn)題,這一點(diǎn)是非常方便。

    代碼如下:

    var zNodes =[

    {id:1,name:"所有老師",open:false,//這里false為默認(rèn)關(guān)閉,true打開(kāi)

    children:[

    {id:2,name:"測(cè)試?yán)蠋?,phone:"123456789101"},

    {id:3,name:"大老師",phone:"15623545621"}

    ]

    },

    {id:4,name:"一班",open:true,

    children:[

    {id:5,name:"小花",phone:"25364215211"},

    {id:6,name:"小綠",phone:"365241253"}

    },

    {id:7,name:"二班",open:true,

    children:[

    {id:8,name:"小家",phone:"25364215211"},

    {id:9,name:"小沙",phone:"365241253"}

    }

    ];

    以下是我用jsp從服務(wù)動(dòng)態(tài)生成樹(shù)的例子,不需要可以忽略,我留著以后參考的。

    代碼如下:

    /*var zNodes =[

    <s:if test="#session.teacherList.size()>0">

    {id:1,name:"所有老師",open:false,

    children:[

    <s:iterator value="#session.teacherList" status="tindex" var="t">

    <s:if test="#session.teacherList.size() != #tindex.index+1">{id:<s:property value="#tindex.index+2"/>,name:"<s:property value='#t.TName' escape='false' />",phone:"<s:property value='#t.TPhone' escape='false'/>"},</s:if>

    <s:if test="#session.teacherList.size() == #tindex.index+1">{id:<s:property value="#tindex.index+2"/>,name:"<s:property value='#t.TName' escape='false' />",phone:"<s:property value='#t.TPhone' escape='false'/>"}</s:if>

    </s:iterator>

    ]

    },

    </s:if>

    <s:iterator value="#session.classList" status="loop" var="c">

    <s:if test="#c.students.size()>0">

    {id:<s:property value='#c.students.size()+#session.teacherList.size()+#loop.index+3'/>,name:"<s:property value='#c.clsName' escape='false'/>",open:true,

    children:[

    <s:iterator value="#c.students" status="l" var="s">

    <s:if test="#c.students.size() != #l.index+1"> {id:<s:property value="#l.index+#session.teacherList.size()+#loop.index+4"/>,name:"<s:property escape='false' value='#s.SName'/>",phone:"<s:property value='#s.SPhone' escape='false'/>"},</s:if>

    <s:if test="#c.students.size() == #l.index+1">{id:<s:property value="#l.index+#session.teacherList.size()+#loop.index+4"/>,name:"<s:property escape='false' value='#s.SName'/>",phone:"<s:property value='#s.SPhone' escape='false'/>"}</s:if>

    </s:iterator>

    <s:if test="#session.classList.size() != #loop.index+1">]},</s:if>

    <s:if test="#session.classList.size() == #loop.index+1">]}</s:if>

    </s:if>

    </s:iterator>

    ];*/

    準(zhǔn)備就緒。初始化樹(shù)要顯示的地方,

    代碼如下:

    $(document).ready(function(){

    $.fn.zTree.init($("#treeDemo"), setting, zNodes);

    });

    希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。

    更多信息請(qǐng)查看IT技術(shù)專欄

    更多信息請(qǐng)查看腳本欄目
    易賢網(wǎng)手機(jī)網(wǎng)站地址:Jquery樹(shù)插件zTree用法入門教程
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2025國(guó)考·省考課程試聽(tīng)報(bào)名

    • 報(bào)班類型
    • 姓名
    • 手機(jī)號(hào)
    • 驗(yàn)證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
    工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報(bào)警專用圖標(biāo)