第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Selenium Java:無法從日期選擇器中選擇日期

Selenium Java:無法從日期選擇器中選擇日期

函數(shù)式編程 2022-10-20 17:12:17
我試圖從自定義日期選擇器中選擇一個日期,但它不起作用。 HTML 與它的外觀截圖一起粘貼如下。我曾嘗試過WebElement dateWidget = driver.findElement(By.className("ui-state-default"));List columns=(List) dateWidget.findElements(By.tagName("ui-state-default"));for (WebElement cell: columns){      //Select 13th Date       if (cell.getText().equals("13")){            cell.findElement(By.linkText("13")).click();            break;      }}甚至嘗試等待命令以便找到定位器但沒有成功。WebDriverWait(driver,100).until(ExpectedConditions.elementToBeClickable(By.cssSelector兩者都不起作用,因為它無法識別元素可以幫助我解決這個問題。如果可能的話,我們甚至可以單擊上一個和下一個,以便我們也可以單擊一些以前的日期嗎?
查看完整描述

2 回答

?
夢里花落0921

TA貢獻1772條經驗 獲得超6個贊

您確實使用錯誤By.tagName("ui-state-default"),ui-state-default是一個類而不是標簽,您的代碼在下面一無所獲:

WebElement dateWidget = driver.findElement(By.className("ui-state-default"));
List columns=(List) dateWidget.findElements(By.tagName("ui-state-default"));

下面的代碼在第一個月返回a文本13 :

driver.findElement(By.xpath("//div[@id='ui-datepicker-div']//a[.='13']")).click();

如果日期選擇器使用以下選項,您可以選擇上個月findElements

List<WebElement> dates = driver.findElements(By.xpath("//div[@id='ui-datepicker-div']//a[.='13']"));
dates.get(2).click();

您也可以使用data-month屬性:

driver.findElement(By.xpath("//div[@id='ui-datepicker-div']//td[@data-month='3']/a[.='13']")).click();


查看完整回答
反對 回復 2022-10-20
?
MMMHUHU

TA貢獻1834條經驗 獲得超8個贊

使用以下 xpath,您可以輕松解決問題,無需任何麻煩

//table[@class='ui-datepicker-calendar']//td[@data-month='2']//a[.='15']

在這里,我選擇了第2個月和第15天來選擇日期。您可以更改數(shù)據(jù)月份以選擇另一個。您也可以使其成為動態(tài)的。

我已經在 chrome 控制臺中對此進行了測試,我的自動化腳本對我來說效果很好

要驗證在 chrome 控制臺中粘貼以下代碼并點擊 inter>

$x("//table[@class='ui-datepicker-calendar']//td[@data-month='2']//a[.='15']")

它將返回第二個月日期 15 的元素。


查看完整回答
反對 回復 2022-10-20
  • 2 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號