C# 从DIV类/Label类动态获取值
我有这个:C# 从DIV类/Label类动态获取值,c#,selenium,webdriver,C#,Selenium,Webdriver,我有这个: <div class="keyinfo"> <label for="ctl00_ContentHolder_DecisionControl_ctl00_lb_ApplicationReference">Application Number:</label> <label class="formanswer">C017206461P</label> </div> <br /> 也试过了 strin
<div class="keyinfo">
<label for="ctl00_ContentHolder_DecisionControl_ctl00_lb_ApplicationReference">Application Number:</label>
<label class="formanswer">C017206461P</label>
</div>
<br />
也试过了
string val1 = driver.FindElement(By.XPath("//div[*[@class='Keyinfo']]//label[*[@class='formanswer']]")).Text;
但它不起作用;它将Val1的值设为Null
您能建议如何获取动态变化的值吗?试试这个XPath:
"//div[contains(@class, 'keyinfo')]/label[contains(@class, 'formanswer')]"
因此,要获取文本,您可以执行以下操作:
string elementXPath = "//div[contains(@class, 'keyinfo')]/label[contains(@class, 'formanswer')]"
string wantedText = driver.FindElement(By.XPath(elementXPath)).Text;
试试这个:
var scriptExecutor = driver as JavaScriptExecutor;
var result = scriptExecutor.ExecuteScript("return $('.formanswer').first().val();").ToString();
var scriptExecutor = driver as JavaScriptExecutor;
var result = scriptExecutor.ExecuteScript("return $('.formanswer').first().val();").ToString();