我有一个对话框,其中包含几个不同的输入字段和类型,如果字段是
,我想根据输入字段前面的书面名称进行检查困难在于我想要检查不同类型的输入:
所以HTML就像:
<tr>
<td>Name</td>
<td><input ...></td>
</tr>
<tr>
<td>Gender</td>
<td><select ...></td>
</tr>
<tr>
<td>information</td>
<td><textarea ...></td>
</tr>
...and so on...
我的方法只获取字段前面的名称,是否应该显示和只读:
public boolean checkIfPresentedAndReadonly(String field, boolean present, boolean readonly){
boolean result = false;
try{
WebElement element = find(By.xpath("//tr[td[@class='c1'][label[text()[contains(.,'"+field+"')]]]]/td[@class='c2']/div/*"));
result = (checkForReadOnly(element) == readonly);
}catch(NoSuchElementException e){
return !present;
}
return result;
}
我的xpath返回任何类型(可能是div,select,input等)....有没有一种很好的方法来找出WebElement
的类型?我想查找类型然后做一些if / else语句来检查状态,具体取决于类型<input>
的输入类型我会检查是否可以执行clear()
和{{ 1}}然后读取输入,以便我可以确定该元素是可写的。
或者他们是否有其他可能的解决方案?