2014-02-19 3 views
0

Как идентифицировать элемент, используя имя ссылки в HTML-теге?Как идентифицировать элемент, используя имя ссылки в теге html onclick?

Я уже определил путь, используя 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>, который содержит <a>, содержащий StoreNet.

Это выражение будет возвращать содержимое <a> внутри <div> с id из SearchMenu, независимо от того, как во многих других уровнях вложенности HTML существуют между ними:

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

Ваш HTML недостаточно для анализа структуры.

У вас есть много похожих <a> с такими же onclick или текстом?

В настоящее время я могу предложить следующие варианты, которые могут не соответствовать вашим потребностям, поскольку отсутствие контекста.

CSS селекторы:

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

XPaths:

.//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

Смежные вопросы