0

基本的なテキスト/正規表現に基づいて特定の行からリンクにアクセスしようとしています

例として、2 列目のテキストが「Cash Balances - Daily」である行のリンクをクリックすると、3 列目は「09-Sep-2013」を探している日付になり、クリックするリンクは 6 列目にあります。 . テーブルのスクリーンショット

<tbody> 
  <tr> 
    <td>498488.txt</td>
    <td>Cash Balances - Daily</td>
    <td>10 Sep-2013</span> </td>
    <td>No </td>
    <td class="Table_DataCelllast"> 
      <a href="javascript:void(0)" id="ctl00_ContentPlaceHolder2_dtgrdListFiles_ctl02_lnkViewfile" onclick="javascript:dw('DownloadFilesView.aspx?DocFileID=9187191&amp;DocFileType=.txt','','menubar=yes,scrollbars,resizable,status,location','525','700');  return false;">View File</a>
    </td>
  </tr>`

これは、リンクを印刷するためだけに試したものです

b.table.trs.each do |tr| p tr.a.link end

しかし、返されるのはこれだけです

#<Watir::Anchor:0x1017df620 located=false selector={:tag_name=>"a"}>
#<Watir::Anchor:0x1017df300 located=false selector={:tag_name=>"a"}>
#<Watir::Anchor:0x1017defe0 located=false selector={:tag_name=>"a"}>
#<Watir::Anchor:0x1017decc0 located=false selector={:tag_name=>"a"}>
#<Watir::Anchor:0x1017de978 located=false selector={:tag_name=>"a"}>
#<Watir::Anchor:0x1017de608 located=false selector={:tag_name=>"a"}>
#<Watir::Anchor:0x1017de2e8 located=false selector={:tag_name=>"a"}>
#<Watir::Anchor:0x1017ddfc8 located=false selector={:tag_name=>"a"}>

どんな助けでも大歓迎です。

4

1 に答える 1

1

行を反復処理して、指定されたテキストを含む行を見つけることができます。次に、その行のリンクをクリックします。

row = @browser.table.tbody.trs.find do |tr| 
    tr.td(:index => 1).text == 'Cash Balances - Daily' and
    tr.td(:index => 2).text == '09-Sep-2013'
end
row.link(:text => 'View File').click
于 2013-09-16T13:42:00.797 に答える