2014-02-19 32 views
0

如何使用下面的HTML標籤中的鏈接名稱標識元素?如何使用onclick html標籤中的鏈接名稱標識元素?

我已經確定使用XPATH/CSS使用直接搜索的路徑,如css(#SearchMenu > ul:nth-child(1) > li:nth-child(1) > a:nth-child(1))。但在我們的環境中,元素的位置會經常變化。有人可以幫助我使用鏈接名稱(StoreNet)來識別元素。

<div class="search"> 
<div class="search-dropdown" onclick="showHideUtilMenu(event, 'SearchMenu');"> 
<span id="searchoptionValue">Consumer</span> 
<span id="dropdownarrow"></span> 
<span id="searchurlValue" style="display: none;">http://</span> 
<div id="SearchMenu" class="utility-menu combobox">`enter code here` 
    <ul class="menu-link"> 
     <li class="menu-link"> 
      <a onclick="getSearchOption('StoreNet','http://store.net/test);">StoreNet</a> 
     </li> 
+0

你要哪些元素? SearchMenu? – helderdarocha

+0

我想使用鏈接StoreNet的名稱搜索標籤中的元素。 – user3326175

回答

1

XPath表達式//a將讓你的<a>內容。表達式div[//a='StoreNet']將返回包含的<div>元素,其中包含StoreNet

這個表達式將返回<a><div>裏面的內容與SearchMenuid,獨立的HTML多少其他的嵌套層,它們之間存在:

//div[@id='SearchMenu']//a 
1

您的HTML不足以用於分析結構。

你有很多相似的<a>onclick或文字相同嗎?

現在,我可以建議以下內容,因爲缺乏上下文,可能不適合您的需求。

CSS選擇:

#SearchMenu a[onclick*='store.net/test'] 
#SearchMenu a[onclick*='StoreNet'] 

的XPath:

.//div[@id='SearchMenu']//a[contains(@onclick, 'store.net/test')] 
.//div[@id='SearchMenu']//a[contains(@onclick, 'StoreNet')] 
.//div[@id='SearchMenu']//a[text()='StoreNet'] 
+0

謝謝。 #SearchMenu a [onclick * ='StoreNet']沒有任何問題。 – user3326175

相關問題