2015-05-29 68 views
-7

屬性如何獲得所有的孩子由父母的id屬性和返回對象實例的數組獲取所有的兒童在使用父ID的jQuery

我想這樣的結果:

pat_101 = adm_01-adm01, adm_01-adm02, adm_01-adm03 
pat_102 = adm_04-adm04, adm_05-adm05, adm_06-adm06 
pat_103 = adm_07-adm07, adm_08-adm08, adm_09-adm09 

從這個網站:

<div> 
    <ul> 
    <li id="pat_101"> 
     <ul> 
     <li id ="adm_01" title="adm101"></li> 
     <li id ="adm_02" title="adm102"></li> 
     <li id ="adm_03" title="adm103"></li> 
     </ul> 
    </li> 
    <li id="pat_102"> 
     <ul> 
     <li id ="adm_04" title="adm104"></li> 
     <li id ="adm_05" title="adm105"></li> 
     <li id ="adm_06" title="adm106"></li> 
     </ul> 
    </li> 
    <li id="pat_103"> 
     <ul> 
     <li id ="adm_07" title="adm107"></li> 
     <li id ="adm_08" title="adm108"></li> 
     <li id ="adm_09" title="adm109"></li> 
     </ul> 
    </li> 
    </ul>  
<div> 

謝謝

+7

你給我們的好作業 –

+0

這非常艱難,我做不到...... ^^ – Jai

+0

@coder請理解!很抱歉,我們沒有時間爲您寫出所有代碼。首先,您嘗試向我們展示您嘗試過的代碼,並且我們會建議或修改該代碼以獲得您的答案。 –

回答

0

因此,這裏是一個答案,歡迎您stackoverflow.com:

var parents = document.getElementsByTagName("li") 
var output = "" 
var children 
for (var ii=0, parent; parent=parents[ii]; ii++) { 
    children = parent.getElementsByTagName("li") 
    if (children.length) { 
    childArray = [] 
    for (var jj=0, child; child=children[jj]; jj++) { 
     childArray[jj] = child.id 
    } 
    output += parent.id + " = " + childArray.join(", ") + "\n" 
    } 
} 

output = output.slice(0, -1) 
console.log (output); 

也許你想通過這種方式一行一行,在Google上查找關鍵字並確保你理解它們。準備就緒後,您可以關閉此窗口併爲自己重新編寫方法,只需使用筆記即可,而無需查看原始內容。快樂噶!