1

これは、これまで軽減できた問題に対するよくある質問です。

ダイナミックhtml/phpは依存関係が多く、変更できないことを考えると。

私のページソースはそのように見えます

 <div id="unique">
    <div id="ambiguous">
       <a href="EditMS(unique record num)">Edit</a> <!--Javascript-->
    </div>
    <div id="ambiguous">
       <a href="EditApple(unique record num)">Edit</a> <!--Javascript-->    
    </div>
 </div>

私は過去にあいまいな問題を抱えていて、基礎となるjavascriptを実行することでそれらを軽減することができましたが、動的なレコード番号のために今はできないと感じています。

質問1:xpathなどを使用して正しい編集リンクにアクセスできますか?質問2:どういうわけか動的レコード番号を取得してからJavaScriptを実行できますか?

4

2 に答える 2

1

cssでそれを行うにはいくつかの方法があります。一致するすべてのIDを取得できます。または、リンクhrefが常にそのようなものである場合は、css属性の一致を使用できます。例えば:

find('#unique').all('#ambiguous').each do |ambiguous| 
  # conditions in here
end

^=または、試合の開始、*=どこかで$=の試合、試合の終了に使用できます

find('a[href^="Edit"]')またfind('a[href*="Apple"]')

お役に立てば幸いです。近い将来、価値を得るための正規表現が表示されます。好き:

"EditApple293845093405983049".match(/\d+/)[0]
# => 293845093405983049
于 2012-12-02T19:00:12.280 に答える
0

質問1に答えるには:

find(:xpath, "//unique/div[@id=ambiguous][0]") is what you're looking for.

于 2012-12-02T18:44:38.357 に答える