2011-11-22 78 views
0

我正在嘗試使用jquery到達我的SharePoint站點上的默認主頁鏈接(href),但我一直在獲取href是未定義的。 我想將其更改爲另一個URL 我已經試過如何使用jQuery更改超鏈接的href:錯誤href爲空

alert($(".static selected menu-item")[0].href).text(); 



<div class="s4-lp s4-toplinks"> 
     <div class="s4-tn" id="zz17_TopNavigationMenuV4"> 
      <div class="menu horizontal menu-horizontal"> 
       <ul class="root static"> 
        <li class="static selected"> 
        <a accesskey="1" href="/sites/Home" class="static selected menu-item" style="height: 11px; margin-top: 0px;"> 
        <span class="additional-background"> 
        <span class="menu-item-text">Home</span> 
        <span class="ms-hidden">Currently selected</span></span></a> 
        </li> 

任何想法,我做錯了 感謝

回答

1

密切注意你的選擇。類名必須以點(.)開頭,而標籤名不能。

您選擇寫着:

$(".static selected menu-item") 

這意味着「一個menu-item元素是selected類型的元素是一個元素內有一類static

從您的標記中,目前還不清楚什麼是正確的選擇器。如果您想選擇所有三個類別的錨標籤,請使用以下代碼:

$(".static.selected.menu-item") 

如果你想用一個類的selected選擇一個元素中與類menu-item一個元素,類static的元素中,使用此:

$(".static .selected .menu-item") 
+0

謝謝你們,並給出解釋 – naijacoder

1

alert()沒有text()方法。

的Try ...

$('.static .selected .menu-item').attr('href', 'new_href'); 
+0

嗨亞歷克斯, 我改變了代碼來改變網址但它沒有工作:( 應該href是我想改變的實際url?例如,我做了 attr('/ sites/Home /','/ sites/newHome /') – naijacoder

+0

Thx Alex修復了它......我想我需要一些睡眠:) – naijacoder

1

改變這種

alert($(".static selected menu-item")[0].href).text(); 

對此:

alert($(".static .selected .menu-item").attr('href'));