我有下面的日期选择器字段,它根据表单上的不同字段填充。我需要清除这个自动填充的日期,然后再次单击它并选择一个不同的日期。因此,我尝试使用xpath单击clear触发器(cross)。但它不点击。我也试过keys.delete、backspace等,也试过clear()。有人能建议我用selenium、java或js实现这一点的其他方法吗?我使用selenium和java。
html:-
<div class="x-no-min-content x-datepickerfield x-pickerfield x-textfield x-field x-component x-body-align-stretch x-animate-underline x-label-align-placeholder x-label-align-vertical x-label-text-align-left null x-mandatory-field x-error-target-under x-labeled x-required x-paint-monitored x-size-monitored x-layout-auto-item" data-componentid="ext-datefield-5" data-xid="2965" id="ext-datefield-5">
<label class="x-label-el" for="ext-element-7051" id="ext-element-7053" style="width: 200px; transform: translateX(0px) translateY(0px); font-size: 12px;">
<span class="x-label-text-el" id="ext-element-7056">Delivery Date</span>
</label>
<div class="x-body-wrap-el">
<div class="x-body-el" id="ext-element-7052">
<div class="x-input-wrap-el">
<div class="x-before-input-el" id="ext-element-7054"/>
<input tabindex="0" oninput="return Ext.doEv(this, event);" class="x-input-el" type="text" id="ext-element-7051" name="delivery_date" placeholder="" autocomplete="off" data-componentid="ext-datefield-5" readonly="true">
<div class="x-after-input-el" id="ext-element-7055">
*<div data-componentid="ext-cleartrigger-62" class="x-cleartrigger x-trigger x-interactive datepickerfield-cancel x-ignore-theme" data-xid="2966" id="ext-cleartrigger-62">*
<div class="x-icon-el x-font-icon"/>
</div>
<div data-componentid="ext-datetrigger-5" class="x-datetrigger x-trigger x-interactive" data-xid="2967" id="ext-datetrigger-5">
<div class="x-icon-el x-font-icon"/>
</div>
</div>
</div>
<div class="x-underline-el"/>
</div>
<div class="x-error-el">
<div class="x-error-icon-el x-font-icon"/>
<div class="x-error-message-el"/>
</div>
</div>
<div class="x-paint-monitor cssanimation"/>
<div class="x-size-monitors scroll">
<div class="expand"/>
<div class="shrink"/>
</div>
</div>
xpathused:-
//div[contains(@class,'x-no-min-content x-datepickerfield') and .//span[contains(text(),'Delivery Date')]]//div[contains(@class,'x-cleartrigger x-trigger')]
截图:
1条答案
按热度按时间ppcbkaq51#
xpath看起来不错,不过可以简化。
可能发生的情况是,当您选择一个值时,“x”元素被阻塞。尝试等待元素可单击: