我有這個包含單選按鈕的 html 代碼:
<mobileweb-group-toggle _ngcontent-oil-c35="" id="searchType" _nghost-oil-c36="">
<!---->
<div _ngcontent-oil-c36="" class="datex-form-field">
<!----><!---->
<mat-radio-group _ngcontent-oil-c36="" class="ng-pristine ng-valid ng-star-inserted ng-touched" role="radiogroup" id="searchType.toggle">
<!---->
<mat-radio-button _ngcontent-oil-c36="" class="datex-radiobutton mat-radio-button mat-accent mat-radio-checked ng-star-inserted" tabindex="-1" id="mat-radio-5">
<label class="mat-radio-label" for="mat-radio-5-input">
<div class="mat-radio-container">
<div class="mat-radio-outer-circle"></div>
<div class="mat-radio-inner-circle"></div>
<div class="mat-radio-ripple mat-ripple" mat-ripple="">
<div class="mat-ripple-element mat-radio-persistent-ripple"></div>
</div>
<input class="mat-radio-input cdk-visually-hidden" type="radio" id="mat-radio-5-input" tabindex="0" name="mat-radio-group-3">
</div>
<div class="mat-radio-label-content"><span style="display:none"> </span>Shipment</div>
</label>
</mat-radio-button>
<mat-radio-button _ngcontent-oil-c36="" class="datex-radiobutton mat-radio-button mat-accent ng-star-inserted" tabindex="-1" id="mat-radio-6">
<label class="mat-radio-label" for="mat-radio-6-input">
<div class="mat-radio-container">
<div class="mat-radio-outer-circle"></div>
<div class="mat-radio-inner-circle"></div>
<div class="mat-radio-ripple mat-ripple" mat-ripple="">
<div class="mat-ripple-element mat-radio-persistent-ripple"></div>
</div>
<input class="mat-radio-input cdk-visually-hidden" type="radio" id="mat-radio-6-input" tabindex="0" name="mat-radio-group-3">
</div>
<div class="mat-radio-label-content"><span style="display:none"> </span>Work Order</div>
</label>
</mat-radio-button>
</mat-radio-group>
</div>
</mobileweb-group-toggle>
無論單選按鈕的ID如何,我如何遍歷父節點并單擊第一個或第二個節點?
uj5u.com熱心網友回復:
我假設您應該單擊塊mat-radio-inner-circle內的元素mat-radio-button以選擇該單選按鈕。如果是這樣,您可以執行以下操作:
List<WebElement>list = driver.findElements(By.xpath("//*[contains(@class,'datex-radiobutton mat-radio-button')]//div[@class='mat-radio-inner-circle']"));
現在,為了單擊第一個單選按鈕,您應該執行:
list.get(0).click();
為了單擊第二個單選按鈕
list.get(1).click();
等
。如果接受點擊的元素不同 - 相應地更改 XPath
uj5u.com熱心網友回復:
Xpath 將是
//type[@radio][1] or //type[@radio][2]
如你所愿。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/355899.html
