2014-09-19 28 views
-1

假設我有以下代碼:的XPath沒有選擇

<div class="Class"> 
<h3>First Title H3</h3> 
    First Description <br /> 
    Choose Option: 
    <select id="Id" name="Name"> 
     <option value="Value1">Option1 $Price1</option> 
     <option value="Value2">Option2 $Price2</option> 
     <option value="Value3">Option3 $Price3</option> 
    </select> 
<h3>Second Title H3</h3> 
    Second Description <a href="https://www.example.com/">Link</a> 
</div> 
  • 什麼是XPath來只打印 「首先說明」?
  • 什麼是XPath打印「$ Price1」只有(沒有/排除「Option1」)? 感謝您的幫助。
+0

試過了什麼? – BoltClock 2014-09-19 02:02:58

回答

2

我不確定你想要的輸出是什麼,但這裏有什麼應該可以幫到你。

following-sibling::text()會幫助你檢查First Description

//div/h3[contains(following-sibling::text(), "First Description")] 

對於select標籤的第一option,我會依靠selectid屬性和optionvalue屬性:

//select[@id="Id"]/option[@value="Value1"]/text() 
+0

謝謝你的回答,alecxe。我會嘗試。對不起我的英文,我更新了這個問題。 – pije 2014-09-19 02:24:32

0

String value = driver.findElement(By.xpath(「// * [@ value ='Value1']」)。getText();

String strarr [] = value.split(「」);

System.out.println(「Price1:」+ strarr [1]);

我認爲這將起作用,我們正在尋找文本並與空間分離。