2013-03-12 75 views
0

在下面的代碼中如何去除基於超鏈接值的li?如何使用mootools根據其值刪除超鏈接?

<ul class="clean menu sub"> 
    <li> 
     <a cat="tech" class="sec_net_1" href="javascript:void(0);" name="&amp;lid=choose_category_internet_fios" rel="1">FiOS Internet</a> 
    </li> 
    <li> 
     <a cat="tech" class="sec_net_1" href="javascript:void(0);" name="&amp;lid=choose_category_internet_hsi" rel="1">High Speed Internet</a> 
    </li> 
    <li class="last" style="margin-bottom:7px;"> 
     <a cat="tech" class="sec_net_1" href="javascript:void(0);" name="&amp;lid=choose_category_internet_dialup" rel="1">Dial-up</a> 
    </li> 
</ul> 

我得到了變量中超鏈接的值。現在基於這個值,其他2個li應該被刪除。我們如何使用mootools來實現這一點?

現在,如果我得到標誌=「撥號」,其他2裏的應刪除的代碼應該是這樣的:

<ul class="clean menu sub"> 
    <li class="last" style="margin-bottom:7px;"> 
     <a cat="tech" class="sec_net_1" href="javascript:void(0);" name="&amp;lid=choose_category_internet_dialup" rel="1">Dial-up</a> 
    </li> 
</ul> 

在這裏,我得到旗從服務器的值。

+0

是否要根據鏈接的名稱屬性或鏈接的文本過濾鏈接(及其父項li)?你有沒有嘗試過任何解決方案? – Eineki 2013-03-12 05:50:57

+0

$(「step-1」)。getElements('ul.menu a.sec_net_1').getParent()。destroy();我嘗試過,但是這會刪除所有的li,因爲所有的錨標籤都有相同的類...所以我想可能是我們可以使用錨標籤值來刪除。 – 2013-03-12 06:04:23

+0

正如你所說的可能是我們可以使用名稱屬性。但是,我們如何使用name屬性來做到這一點? – 2013-03-12 06:06:32

回答

0

如果你可以在鏈接名利用該解決方案是一個單行:

http://jsfiddle.net/5axJc/

$$("ul.menu :not(a[name='&li=choose_category_internet_dialup']) !> li").destroy() 

呼籲摧毀一個集(我會用在產品代碼document.getElements)會打電話給你方法對其中的每個元素。

在選擇表達有幾種深奧選擇器,也許值得一些更深的解釋:

  • ul.menu是基於普通類選擇
  • :否(A [名=」 & LI = choose_category_internet_dialup'])
    基於所述name屬性,這些屬性做:not()匹配的值選擇鏈接
  • !>是父選擇

因此你可以閱讀選擇爲:

選擇所有的李進菜單UL是一個錨,其名稱是不是你想要的價值的父親。

編輯

只選擇是搜索一個家長李只是 ul.sub a[name='&lid=choose_category_internet_fios'] !> li選擇它,並基於該 選擇具有~ li所有的兄弟姐妹。結果就是這樣。

$$("ul.sub a[name='&lid=choose_category_internet_fios'] !> li ~ li").dispose() 

請注意,我們已經擺脫了:not()選擇器。對我來說,這是一個更線性的方式來完成任務。

+0

http://jsfiddle.net/5axJc/3/。我在這裏更新了我的列表...現在,如果我在這裏使用您的解決方案,請將其從所有UL列表中刪除。其他列表應該保持不變。只有在其中出現「撥號」的列表應該被更新。對此有何建議?請幫忙.. – 2013-03-12 08:34:45

+0

在評論中閱讀css有點不愉快,我已經更新了我的答案 – Eineki 2013-03-12 09:35:50

+0

你真的很好!感謝你的回答 :) – 2013-03-12 12:32:20