2017-07-28 56 views
1

这是HTML文本提取属性值动态的iMacros

<select name="ctl00$ContentPlaceHolder1$ddltype" id="ctl00_ContentPlaceHolder1_ddltype" class="page-heading" style="background-color: rgb(255, 244, 244); width: 125px; outline: 1px solid blue;"> 
      <option value="0">Select Bricks</option> 
      <option value="brk_A_price">A</option> 
      <option value="brk_B_price">B</option> 
      <option value="brk_oth_price">Others</option> 

     </select> 
. 
. 
. 
. 
<select name="ctl00$ContentPlaceHolder1$ddlReportOn" id="ctl00_ContentPlaceHolder1_ddlReportOn" class="page-heading" style="background-color:#FFF4F4;width:135px;"> 
      <option value="0">Select Report For</option> 
      <option value="1">Comparison</option> 
      <option value="2">Variation</option> 

     </select> 

所以从上面的html我想提取选项值,即brk_A_price,brk_B_price,从第二brk_oth_price从第一选择标记和1,2选择标签。

'code to get brk_A_price,brk_B_price,brk_oth_price 
TAG POS=1 TYPE=SELECT ATTR=id:ctl00_ContentPlaceHolder1_ddltype&&TXT:* EXTRACT=HTM 
TAG POS R1 TYPE=option ATTR=value&&TXT 

'code to get 1, 2 
TAG POS=1 TYPE=SELECT ATTR=id:ctl00_ContentPlaceHolder1_ddlReportOn&&TXT:* EXTRACT=HTM 
TAG POS R1 TYPE=option ATTR=value&&TXT 

然而,对于每一个下拉我想改变只是ID属性,但我想它的代码只是能够从<option..>标签提取文本,而不是价值。

P.S:This是从哪儿我提取数据

任何建议上应作出什么改变的网站。 任何帮助将不胜感激。 感谢

回答

1

试试下面的办法:

SET !EXTRACT_TEST_POPUP NO 
SET !EXTRACT NULL 
TAG POS=1 TYPE=SELECT ATTR=id:ctl00_ContentPlaceHolder1_ddltype&&TXT:* EXTRACT=HTM 
SET values1 EVAL("var v = '{{!EXTRACT}}'.match(/value=\"(.+?)\"/g).toString().replace(/value=\"|\"/g, '').split(','); v.shift(); v;") 
PROMPT {{values1}} 

SET !EXTRACT NULL 
TAG POS=1 TYPE=SELECT ATTR=id:ctl00_ContentPlaceHolder1_ddlReportOn&&TXT:* EXTRACT=HTM 
SET values2 EVAL("var v = '{{!EXTRACT}}'.match(/value=\"(.+?)\"/g).toString().replace(/value=\"|\"/g, '').split(','); v.shift(); v;") 
PROMPT {{values2}} 

(也许有人会提出一些比较容易,但上面贴的代码似乎反正工作)