월별로 월을 선택해야합니다. XPath는 난수 페이지 너무xpath 또는 css 경로에서 임의의 숫자가있는 요소를 클릭하는 방법?
#monthpicker_037945738616321245 > table > tbody > tr:nth-child(4) > td:nth-child(3)
또한 3 방 선택기를 갖는 난수를
//*[@id="monthpicker_037945738616321245"]/table/tbody/tr[4]/td[3]
CSS 경로를 가지고 있지만, 하나만이 보인다. 이 monthpicker가 포함 된 각 div에는 임의의 숫자가 포함 된 ID가 있습니다.
<table class="mtz-monthpicker">
<tbody class="mtz-monthpicker">
<tr class="mtz-monthpicker">
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="1">Январь</td>
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="2">Февраль</td>
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="3">Март</td>
</tr>
<tr class="mtz-monthpicker">
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="4">Апрель</td>
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="5">Май</td>
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="6">Июнь</td>
</tr>
<tr class="mtz-monthpicker">
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="7">Июль</td>
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="8">Август</td>
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="9">Сентябрь</td>
</tr>
<tr class="mtz-monthpicker">
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="10">Октябрь</td>
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="11">Ноябрь</td>
<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month" style="padding:5px;cursor:default;" data-month="12">Декабрь</td>
</tr>
</tbody>
</table>
monthpicker_04289214732160275
또는 monthpicker_04395144395656033
제가
@b.table(:class => 'mtz-monthpicker').tr(:class => 'mtz-monthpicker').td(:class => 'ui-state-default mtz-monthpicker mtz-monthpicker-month').click
CSS 경로 시도 : #monthpicker_020622412423150185 > table > tbody > tr:nth-child(4) > td:nth-child(3)
의 XPath : 또한,이 프런트 엔드에 사용 angular.is //*[@id="monthpicker_020622412423150185"]/table/tbody/tr[4]/td[3]
.
이 달 피커에서 한 달을 선택하고 클릭하려면 어떻게해야합니까?
나는 watir-webdrievr을 사용합니다. I 시도 : @ b.td (: XPath를 '// *은/표/TBODY/TR [4]/TD [3] [(@id'monthpicker _ ')를 포함] ")를 when_present.click @b.. TD (: XPath를 '// *와 시작 - (@id'monthpicker _ ')]/표/TBODY/TR [4]/TD [3] ") when_present.click b.td @ (:. XPath를 , "//*[.='Март']").when_present.click 그러나 나는 90 초 후에 만 기다렸다가 {: xpath => ...를 기다렸다. – user1371940
그 후에 무슨 일이 일어난거야? – Saifur
이 xpath는 작동하지만이 요소는 현재 표시되지 않으며 셀렌은 해당 요소와 상호 작용할 수 없습니다. 또한이 요소에는 숨길 수있는 스타일이 없습니다. 하지만 부모에게는 오버 플로우 : 숨겨진 스타일이 있습니다. 자바 스크립트를 사용하여 부모 요소의 가시성을 다음과 같이 변경하려고했습니다. monthPikerOverflow = @ b.div (: xpath, "// * [contains (@id, 'monthpicker_')]" script = << - JS arguments [0] .style.overflow = 'visible'; 인수 [0] .style.visibility = 'visible'; JS @ b.execute_script (script, monthPikerOverflow)하지만 도움이되지 않았습니다. 그래서 나는 해결책을 찾고 있습니다. – user1371940