Ajax 板


LINE

※ 引述《jackyeah1213 (frog)》之銘言: : http://ppt.cc/w_OD : 上面網址是我想要做到的示意圖 : 按下"行政部"之後 : 會跑出他相關的資料 : 再按一下"行政處" : 則是縮起來 : 按下"文學院" : 跑出"中國文學系""歷史學系" : 按下"歷史學系" 跑出相對應資料 : 其餘的同理@@ : 然後按下旁邊菱形的圖案 : 則是將所屬的所有資料全部打開、關閉 : ===========以上是解釋=========== : 因為要做到這種打開關閉的動作 : 所以我想說使用toggle : 我原先作法是 : html: : <label onclick="ctl('aa')">行政處</label> : <tr id="aa1"> : <td>行政處的對應資料</td> : </tr> : javascript: : function ctl(num) : { : $("tr[id*="+num+"]").toggle(); : } : 但我想要把第一次按下跟第二次暗下的動作 : 分別再加入事件 : 所以才會上網找了範例(PO在版上的那個) : 但範例的觸發是寫在ready function裡 : 而我是希望可以分別寫在物件的onclick去呼叫function : 因為無法預先知道會有幾層以及共有幾種類別@@ : 想請問 : 有比較好的作法嗎~"~http://ppt.cc/w_OD : 上面網址是我想要做到的示意圖 : 按下"行政部"之後 : 會跑出他相關的資料 : 再按一下"行政處" : 則是縮起來 : 按下"文學院" : 跑出"中國文學系""歷史學系" : 按下"歷史學系" 跑出相對應資料 : 其餘的同理@@ : 然後按下旁邊菱形的圖案 : 則是將所屬的所有資料全部打開、關閉 : ===========以上是解釋=========== : 因為要做到這種打開關閉的動作 : 所以我想說使用toggle : 我原先作法是 : html: : <label onclick="ctl('aa')">行政處</label> : <tr id="aa1"> : <td>行政處的對應資料</td> : </tr> : javascript: : function ctl(num) : { : $("tr[id*="+num+"]").toggle(); : } : 但我想要把第一次按下跟第二次暗下的動作 : 分別再加入事件 : 所以才會上網找了範例(PO在版上的那個) : 但範例的觸發是寫在ready function裡 : 而我是希望可以分別寫在物件的onclick去呼叫function : 因為無法預先知道會有幾層以及共有幾種類別@@ : 想請問 : 有比較好的作法嗎~"~ 寫了一個範例 http://jsfiddle.net/PCQ4D/ 展開收合表格 主要原理就是要建立父子層的關係 這邊是用 id 和 ref兩屬性建立之間的關係 建立好之後 再建立一個父子層對照表 tabref { id, [所有子項的element] } 然後再建立event handler 當按到某列時 收合所有子項 如果子項還有子項 繼續recursive 還有很多其他作法 <table> <tr> <td>位置</td><td>名稱</td><td>信箱</td><td>學號</td><td>編碼</td><td>編號</td> </tr> <tr id='a1'> <th colspan='6'>o1</th> </tr> <tr id='a1-1' ref='a1'> <th colspan='6'>o1-1</th> </tr> <tr ref='a1-1'> <td>aa1</td><td>bb1</td><td>cc1</td><td>dd1</td><td>ee1</td><td>ff1</td> </tr> <tr ref='a1-1'> <td>aa2</td><td>bb2</td><td>cc2</td><td>dd2</td><td>ee2</td><td>ff2</td> </tr> <tr ref='a1'> <td>a1</td><td>b1</td><td>c1</td><td>d1</td><td>e1</td><td>f1</td> </tr> <tr ref='a1'> <td>a2</td><td>b2</td><td>c2</td><td>d2</td><td>e2</td><td>f2</td> </tr> <tr id='a2'> <th colspan='6'>o2</th> </tr> <tr ref='a2'> <td>u1</td><td>v1</td><td>w1</td><td>x1</td><td>y1</td><td>z1</td> </tr> <tr ref='a2'> <td>u2</td><td>v2</td><td>w2</td><td>x2</td><td>y2</td><td>z2</td> </tr> </table> table { width:100%; border: 1px solid black; } tr {width:auto;} td { border: 1px solid red; } th { border: 1px solid blue; } $(document).ready(function() { var tabref = {}; $('tr').each( function() { //alert( 'id=' + $(this).attr('id') + ' ref=' + $(this).attr('ref') ); var xref = $(this).attr('ref'); var row = $(this)[0]; if (xref) { if ( !tabref.hasOwnProperty(xref) ) { tabref[xref] = []; } tabref[xref].push( row ); //alert(xref + " reference : " + (tabref[xref][ tabref[xref].length-1 ].id || // tabref[xref][ tabref[xref].length-1 ].innerHTML) ); } }); $.each(tabref, function(key, items) { //alert(key + ': ' + items.length); $('#' + key).toggle(function() { runson(items,'hide'); }, function() { runson(items,'show'); }); }); var runson = function(ary,act) { $.each( ary,function(index,item){ //alert( 'item.id=' + item.id + ' tabref[item.id]='+ tabref[item.id]); if (item.id && tabref[item.id]) { runson(tabref[item.id],act); } act =='show' ? $(item).show() : $(item).hide(); }); } }); -- --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 175.181.127.213







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Soft_Job站內搜尋

TOP