我有一点选择此输入的问题形成Casperjs中的提交按钮。
<div id="id1d9" style="display:none"></div>
<div class="item wishname" id="id1da">
<!-- <div class="item wishname">-->
<label id="id1db" for="id1a0">
E-Mail-Wunschname
</label>
<div class="input" id="id1a1">
<input class="wishname feedback-panel-trigger multiReplaceCharsInWishnamelField" autocomplete="off" maxlength="40" value="" name="wishnamePanel:wishname:subForm:alias" id="id1a0" type="text">
<span class="btn-positioner">
<span class="btn-wrapper btn-m btn-key">
<input name="wishnamePanel:wishname:subForm:checkAvailability" id="checkAvailabilityBtn" value="Prüfen" type="submit">
</span>
</span>
主要问题是,每次重新加载时,div的id都会随机变化。所以casperjs喜欢==&gt;
this.sendKeys('#id1a0 ',"Test String");
不起作用。
答案 0 :(得分:3)
由于ID始终更改,因此您应使用备用selector来定位此元素。您可以使用类,标记名称或其组合。
这个怎么样:
.wishname.feedback-panel-trigger.multiReplaceCharsInWishnamelField
或者这个:
.item.wishname > .input > input
如果您有多个具有相同类别的项目,您可以尝试迭代以获得正确的项目。