2013-09-24 27 views
2

我正在嘗試Label的下面的xpath,但它無法找到元素。 。無法使用xpath表達式爲LABEL定位元素

driver.findElement(By.xpath( 「// DIV [標籤[包含(文本(), '病人的名字']]」))的IsEnabled();

FirePath: .//* [@ ID = 'update_patient_profile']/DIV/DIV [1] /標籤)

下面是該領域的HTML源代碼。

<form id="update_patient_profile" action="/subscriber/" method="post" name="update_patient_profile"> 
    <div class="subscriberAddPatient"> 
    <div class="formData nameInputs"> 
    <label for="first_name">Patient's Name</label> 
    <input id="first_name" class="left nameRule" type="text" onblur="resetTxtAdd($(this))" onfocus="emptyFieldAdd($(this))" onclick="emptyFieldAdd($(this))" name="first_name" value="First Name" maxlength="24"/> 

任何人都可以建議我爲標籤的XPATH。

+0

你的HTML源壞了,請檢查。查看有關格式化問題的[常見問題]。 –

回答

5

你應該使用下面XPATH的

//*[@id='update_patient_profile']//div[2]/label[.='Patient's Name'] 
+0

很好的回答.... - – unknownbits

0

你也可以使用 文本()的而不是點「」。爲了驗證標籤文本可以使用這個路徑

//form[@id='update_patient_profile']//div[2]/label[text()='Patient's Name'] 
1

//形式[@ ID =「update_patient_profile」] /標籤[文本()=「病人的名字」]作爲標籤的標籤也是一個孩子表單標籤。

0

這將直接找到病人的姓名

//標籤的標籤[@爲= 「FIRST_NAME」]

相關問題