【问题标题】:Does RFT have equivalent for jQuery .next() ?RFT 是否与 jQuery .next() 等效?
【发布时间】:2012-02-27 02:40:25
【问题描述】:

我需要在 RFT 中进行工作选择,以防选择是通过 jQuery AJAX 选择完成的,其中 html 代码看起来像

<select style="display: none;" id="_campus_id" name="_campus_id">
  <option id="CAMPUS1" value="1">camp</option>
  <option id="CAMPUS2" value="2">camp2</option>
</select>
<input aria-haspopup="true" aria-autocomplete="list" role="textbox" autocomplete="off" class="ui-autocomplete-input ui-widget ui-widget-content ui-corner-left">
<button aria-disabled="false" role="button" class="ui-button ui-widget ui-state-default ui-button-icon-only ui-corner-right ui-button-icon" title="Show All Items" tabindex="-1">
  <span class="ui-button-icon-primary ui-icon ui-icon-triangle-1-s"></span><span class="ui-button-text"> 
  </span>
<button>

我需要“转到”输入框并输入文本,然后“按”{DOWN} 和 {ENTER}。我已经准备好了这部分,但是输入框没有任何唯一的 id,所以我想根据获得属性 ID 的 select 找到输入框。

可以使用 getNext() 之类的方法,但我猜它在 RFT 中不存在。

任何其他想法如何使这项工作?如果页面上有多个 AJAX 选择?

【问题讨论】:

    标签: rft


    【解决方案1】:

    它是特定唯一对象的子对象,例如 div 还是表单?如果是这样,您可以使用 find() 方法来搜索特定对象的子对象。

    字符串“ui-autocomplete-input ui-widget ui-widget-content ui-corner-left”在该类型的对象中是唯一的吗?您可以执行 find() 来获取所有输入框,然后遍历它们,使用 getProperty() 检查属性,直到您确定自己拥有正确的输入框。这可以与上述建议结合使用。

    【讨论】:

    • 就是这样,它不是任何独特事物的孩子。它位于唯一 ID 旁边。
    【解决方案2】:

    经 IBM 支持确认,根据当前版本,RFT 没有任何等效于 jQuery .next() 方法的方法。我为增强功能创建了一张票。

    【讨论】:

      【解决方案3】:

      您可以从选择框中获取所有内容,并使用一些正则表达式来搜索关键字或选择的完整句子,作为您的选择。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-06-30
        • 1970-01-01
        • 1970-01-01
        • 2010-09-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多