You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Imacros中如何定位Clone提交按钮的POS值?

定位动态位置的Clone按钮(iMacros)

问题背景

页面包含0到多个动态生成的Amend按钮:

<input type="submit" value="Amend" onclick="jQuery('#adjust_item_id').val(1234); setAction(this.form, 'adjust',0,null, 1);">

下方有一组固定按钮,但Amend按钮的数量变化会导致这些固定按钮的POS值动态改变:

<div class="xyz-buttons">
    <input value="Back" type="submit" onclick="setAction(this.form, 'back','0',null, '0');">
    <input value="Clone" type="submit" onclick="setAction(this.form, 'clone','0',null, '1');">
    <input value="FINISH" type="submit" onclick="setAction(this.form, 'save_validate','0',null, '1');" class="GreenButton">
</div>

尝试以下命令未成功:

TAG POS=1 TYPE=DIV ATTR=CLASS:pfbc-buttons
TAG POS=R1 TYPE=INPUT:SUBMIT FORM=ID:FCLS7022 ATTR=ID:clone

正确定位方法

方法1:基于父容器的相对定位

先定位到固定的父容器xyz-buttons,再在容器内相对定位Clone按钮(注意修正你之前写错的容器类名):

TAG POS=1 TYPE=DIV ATTR=CLASS:xyz-buttons
TAG POS=R2 TYPE=INPUT:SUBMIT ATTR=VALUE:Clone CONTENT=YES
  • 说明:父容器内第一个按钮是Back(R1),第二个是Clone(R2),不受外部Amend按钮数量影响。

方法2:直接通过按钮属性定位(推荐)

跳过POS值,直接用按钮独有的value或onclick属性定位,完全避免位置变化的影响:

# 仅通过value属性定位(最简单)
TAG TYPE=INPUT:SUBMIT ATTR=VALUE:Clone CONTENT=YES

# 结合onclick属性增强唯一性
TAG TYPE=INPUT:SUBMIT ATTR=VALUE:Clone&&ONCLICK:setAction(this.form, 'clone','0',null, '1') CONTENT=YES

方法3:结合固定表单ID定位

如果表单IDFCLS7022是固定的,可以缩小定位范围:

TAG FORM=ID:FCLS7022 TYPE=INPUT:SUBMIT ATTR=VALUE:Clone CONTENT=YES

你之前命令的错误点

  1. 容器类名错误:你写的pfbc-buttons实际应该是xyz-buttons
  2. 按钮无ID属性:目标Clone按钮没有id="clone"的属性,用ATTR=ID:clone会匹配不到任何元素

内容的提问来源于stack exchange,提问作者Shawon Md

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 21:40:19