簡體   English   中英

如果包含字符串,則使用javascript選擇列表框元素文本

[英]Select Listbox element text using javascript if it contains a string

我正在使用Visual Studio在C#中編寫代碼。 現在,我正在使用Selenium WebDriver在網站中選擇一些表單輸入。 我試圖根據文本框中的輸入選擇一個列表框元素。

僅當它與文本框完全相同時,我才設法選擇它。 通常,listbox元素旁邊有一個[p]字符串,因此該代碼不再起作用。

編碼

IWebElement complet = driver.FindElement(By.Id("id_complete_info"));
js.ExecuteScript("var select = arguments[0]; for(var i = 0; i < select.options.length; i++){ if(select.options[i].text == arguments[1]){ select.options[i].selected = true; } }", complet, textbox1.text);

為了使其按照我描述的方式工作,我應該改變什么?

我建議使用Driver.FindElement(By.XPath())或類似的東西,而不是使用一個用Java語言編寫的長for循環。

類似於Driver.FindElement(By.XPath("//*[text()='{text}']")).Click(); 如果您嘗試根據元素的text屬性單擊元素,則可能會解決您的問題。

沒有關於頁面HTML外觀的任何上下文,這個問題很難回答。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM