2011-11-16 28 views
0

我试图创建一个自动执行某个HTML页面的操作。这个页面包含一个复杂的表格,里面有很多divs。此页面的每一行都可点击并打开另一页面。我已经创建了自动化,可以在打开的页面上执行任务,但我需要先自动点击第一张表上的每一行。Javascript - 获取HTML页面中某个类的特定DIV元素中的所有链接并创建一个数组

分析这个页面的第一列,我有这样的XPath第一科拉姆的前3个单元:

/HTML[1]/BODY[1]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/TABLE[1]/TBODY[1]/TR[3]/TD[1]/TABLE[1]/TBODY[1]/TR[2]/TD[2]/TABLE[1]/TBODY[1]/TR[1]/TD[2]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/DIV[1]/DIV[2]/DIV[2]/SPAN[1]/UL[1]/LI[3]/DIV[1]/DIV[2] 


/HTML[1]/BODY[1]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/TABLE[1]/TBODY[1]/TR[3]/TD[1]/TABLE[1]/TBODY[1]/TR[2]/TD[2]/TABLE[1]/TBODY[1]/TR[1]/TD[2]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/DIV[1]/DIV[2]/DIV[2]/SPAN[1]/UL[1]/LI[4]/DIV[1]/DIV[2] 


/HTML[1]/BODY[1]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/TABLE[1]/TBODY[1]/TR[3]/TD[1]/TABLE[1]/TBODY[1]/TR[2]/TD[2]/TABLE[1]/TBODY[1]/TR[1]/TD[2]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/DIV[1]/DIV[2]/DIV[2]/SPAN[1]/UL[1]/LI[5]/DIV[1]/DIV[2] 

,这对于第一列的最后一个单元格:

/HTML[1]/BODY[1]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/TABLE[1]/TBODY[1]/TR[3]/TD[1]/TABLE[1]/TBODY[1]/TR[2]/TD[2]/TABLE[1]/TBODY[1]/TR[1]/TD[2]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/DIV[1]/DIV[2]/DIV[2]/SPAN[1]/UL[1]/LI[102]/DIV[1]/DIV[2] 

您可以看到只有一个元素从3到102.

第一列中的所有单元格均具有此HTML

<div style="float:left;" class="ajaxListColumn ajaxListColumnInternal ajaxListColumn_2 ajaxListSearchable ajaxListRowDivActionable ajaxListRowDivColumnActionItem default-to-first-column"> 
<span class="left">Item 1</span> 
&nbsp; 
</div> 

什么在细胞间变化的第一列是该项目1,2,3,等...

我需要的是,创建元素的数组,这样我就可以点击他们使用Javascript,然后执行每个页面上已有的自动化功能,该功能将在此表的每行上打开。我如何获得这个数组?谢谢。

我不确定你们需要回答这个问题的其他信息。请问我,我会在这里发帖。

+0

你可以在下面创建样本:http://jsfiddle.net/ – jmav

+0

借调,和一些示例数据,所以我们可以看到你正在尝试使用什么。 – N3dst4

+0

@数字机器人:如果您需要特定的XPath表达式,请指定该XPath表达式必须选择哪些节点。 –

回答

1

如果你只是想要一个XPath来选择所有这些行,只需要你的第二个例子并删除“[102]”。

           Here: ↓ 
/HTML[1]/BODY[1]...blah blah.../DIV[2]/SPAN[1]/UL[1]/LI/DIV[1]/DIV[2] 

这将选择所有的LI元素。

我会更新这个答案,如果我得到了棒的错误结束。

+0

它不工作。 – SpaceDog

+0

@DigitalRobot - 它不工作的方式? –

+0

它给了我一个零项清单。 – SpaceDog

相关问题