2016-05-16 126 views
1

我試圖點擊'高級搜索鏈接',但它給了我錯誤說,沒有這樣的元素存在,其中mt定位點有效基於我已經使用的xpath。無法點擊元素

<a id="ctl00_ContentPlaceHolder1_btnAdvanceSearch" class="lnkAdvancedSearchDown" onclick="javascript:ShowHideAdvanceSearch('#ctl00_ContentPlaceHolder1_drpLeadAgent','#ctl00_ContentPlaceHolder1_drpLeaseAgent','#ctl00_ContentPlaceHolder1_drpSaleAgent','#ctl00_ContentPlaceHolder1_drpContactAgent','#ctl00_ContentPlaceHolder1_drpFurnished','#ctl00_ContentPlaceHolder1_drpFloorType','#ctl00_ContentPlaceHolder1_drpView','#ctl00_ContentPlaceHolder1_drpLayout','#ctl00_ContentPlaceHolder1_drpTenancy','#ctl00_ContentPlaceHolder1_btnAdvanceSearch','#ctl00_ContentPlaceHolder1_drpReserveLeadAgent');">Advanced Search</a> 

我試過每一個可能的定位器。

By.xpath( 「// * [@ id中= 'ctl00_ContentPlaceHolder1_btnAdvanceSearch']」)

+0

可能有可供選擇提到的xpath兩個鏈路。 –

+0

您提供的html不包含ID'ctl00_ContentPlaceHolder1_btnAdvanceSearch'和文本「高級搜索鏈接」。請提供相關的html。 – Guy

+0

@Kishan Patel,是的,我還使用適當的xpath解決了第一個鏈接,但它仍然無效。 –

回答

0

請下面的代碼嘗試。它應該工作。

driver.findElement(By.xpath(".//a[text()='Advanced Search']")).click(); 

如果上述代碼返回2個元素,那麼我們必須使用不同的xpath來區分這兩種元素。

希望這會有所幫助。

0

我弄明白了,這裏是需要使用的xpath。

// * [@ id中= 'ctl00_ContentPlaceHolder1_pnlListingTool']/DIV [1]/DIV/DIV [2]/A