硒C#xpath试图获得第二个TD



我正在尝试选择class="participantName0"所在的第二个TD。无论我尝试什么,我都只能找到第一个TD。

<tbody role="rowgroup"><tr data-uid="a3aa1580-63e9-4d91-a20e-cbec3b83989c" role="row" class="k-grid-edit-row"><td style="display:none" role="gridcell">0<input type="hidden" required="" name="CareConferenceParticipantList[0].ParticipantID" value="0"></td><td tabindex="-1" required="True" validationmessage="Enter something in this field" role="gridcell" id="CareConferenceParticipantList_active_cell" class="k-edit-cell" aria-describedby="cf01405d-7381-4265-a499-cadd57165446 CareConferenceParticipantList_active_cell" data-role="editable">
<input id="ParticipantName" name="ParticipantName" type="text" value="" data-bind="value:ParticipantName" maxlength="300" class="k-valid"><span class="field-validation-valid" data-valmsg-for="ParticipantName" data-valmsg-replace="true" style="display: none;"></span></td><td tabindex="-1" role="gridcell"><span> </span><input type="hidden" name="CareConferenceParticipantList[0].ParticipantRole" class="credential0" value="" maxlength="300"></td><td role="gridcell"><input type="checkbox" tabindex="-1" name="CareConferenceParticipantList[0].IsInPerson" style="margin-left:30px;" class="IsInPersonChkBx" value="false"></td><td role="gridcell"><a class="k-button k-button-icontext k-grid-deletethisrow" href="javascript:void(0)" tabindex="-1"><span class="glyphicon glyphicon-trash"></span></a></td></tr><tr class="k-alt" data-uid="04c9cafd-bad2-402d-ac63-334b8049f79e" role="row"><td style="display:none" role="gridcell">0<input type="hidden" required="" name="CareConferenceParticipantList[1].ParticipantID" value="0"></td><td tabindex="-1" required="True" validationmessage="Enter something in this field" role="gridcell"><span> </span><input type="hidden" name="CareConferenceParticipantList[1].ParticipantName" class="participantName1" value="" maxlength="300"></td><td tabindex="-1" role="gridcell"><span> </span><input type="hidden" name="CareConferenceParticipantList[1].ParticipantRole" class="credential1" value="" maxlength="300"></td><td role="gridcell"><input type="checkbox" tabindex="-1" name="CareConferenceParticipantList[1].IsInPerson" style="margin-left:30px;" class="IsInPersonChkBx" value="false"></td><td role="gridcell"><a class="k-button k-button-icontext k-grid-deletethisrow" href="javascript:void(0)" tabindex="-1"><span class="glyphicon glyphicon-trash"></span></a></td></tr><tr data-uid="4d8828a8-6cd5-45af-8db0-3dfbdd07b121" role="row" class=""><td style="display:none" role="gridcell">0<input type="hidden" required="" name="CareConferenceParticipantList[2].ParticipantID" value="0"></td><td tabindex="-1" required="True" validationmessage="Enter something in this field" role="gridcell" class=""><span> </span><input type="hidden" name="CareConferenceParticipantList[2].ParticipantName" class="participantName2" value="" maxlength="300"></td><td tabindex="-1" role="gridcell"><span> </span><input type="hidden" name="CareConferenceParticipantList[2].ParticipantRole" class="credential2" value="" maxlength="300"></td><td role="gridcell"><input type="checkbox" tabindex="-1" name="CareConferenceParticipantList[2].IsInPerson" style="margin-left:30px;" class="IsInPersonChkBx" value="false"></td><td role="gridcell"><a class="k-button k-button-icontext k-grid-deletethisrow" href="javascript:void(0)" tabindex="-1"><span class="glyphicon glyphicon-trash"></span></a></td></tr></tbody>
我正在尝试使用以下XPath(//td [@name]//paster-sibling ::*[2]//输入(以获取输入ID =" dansantAntantName"。我尝试了很多不同的事情,但无法抓住它。

尝试从父元素中获取所有td元素:

IWebElement parent = driver.FindElement(By.Id("ParticipantName"));
IList<IWebElement> tdElements = parent.FindElements(By.TagName("td"));
IWebelement td2 = tdElements[1];

您的HTML不是很可读,所以我只是假设input id="ParticipantName"是您想要的元素的父母。

尝试以下:

//tr[@data-uid][1]/descendant::input[2]

更改第一个节点的索引时,您可以迭代表行:

//tr[@data-uid][REPLACE INDEX]/descendant::input[2]

最新更新