2013-09-24 49 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”]

相关问题