0

概要

私はこれでどんな助けにも大いに感謝します。「簡単」だと思いますが、わかりません。セレクターを使用して、一意の画像ファイル名を選択する必要があります。次に、が入って<td>いるの右側の1列にあるを置き換える必要があります。<td><img>

私は現在のウェブサイトを持っており、これをよりよく説明するのに役立つ図も作成しました。次の2つのリンクを確認してください。Webサイト:http ://www.writeguard.com/catalog/Checks/LaserInkjet-小切手 図:http://goo.gl/Q3Uif

問題

上記のウェブサイトへのリンクは問題ありません。oscommerceには「フランチャイズ」カスタム変更があります。特定のアカウントを持っている顧客だけが、私が助けを必要としている場所にログインできます。私が作成した図は、それを簡単に説明しています。私の「パズル」のすべての「ピース」が揃ったので、.replaceWIth()メインサイトでの作業は次のようになります。この例は一番上の行用です...変更する必要があるすべての行にこれらの1つがあります。

 $("a[href$=/Premium-Security-Laser-Check].smallTextLink").parent()
 .replaceWith('<td class="productListing-data" style="border-left:1px solid #FFF; border-top:1px solid #FFF; border-bottom:1px solid #808080; border-right:1px solid #808080;"><div class="leftSide"><a href="http://www.writeguard.com/catalog/Checks/LaserInkjet-Checks/Premium-Security-Laser-Check" class="smallTextLink">Premium Security Laser Check</a><ul style="line-height: 1.5em; font-size: 11px; margin-left: -15px;"><li style="color:red;"><strong>Buy 500 Checks, Get 500 Free Special!</strong></li><li>More than 8 security features</li><li>Thermochromic Ink</li><li>8.5" x 11" sheet 24lb MICR paper</li><li>2 perforations @ 3.5" x 7"</li></ul><div class="moreInfoButtonsNew"><a href="http://www.writeguard.com/catalog/Checks/LaserInkjet-Checks/Premium-Security-Laser-Check" class="positive"><img src="http://writeguard.com/catalog/images/new_layout/icons/information.png" alt=""/>More Info</a></div></div><div class="rightSide"><p class="ourPrice">Starting At:<br>$39.50</p></div></td>');

それはまったく効率的ではないと思います。しかし、私が今抱えているこの問題のためだけに、私は冒頭で説明したことを実行できる必要があります。ファイル名で選択し<img>、DOMをナビゲートして、.replaceWith()上記と同じことを実現できるようにします。私は多くの異なるセレクターを試しましたが、どれも機能しません。ページが文字通り10フィートの長さになるまで、テーブルデータ内にテーブルデータを作成することになります。どこが悪いのかわかりません。

必要に応じて、詳細を喜んで提供させていただきます。私は明らかにjQueryの経験があまりなく、私のメソッドはおそらく悪夢です。jqueryを使用してプログラムするための正確で効率的な方法をすぐに学びたいと思います。ご助力ありがとうございます!

4

2 に答える 2

0

問題はセレクターにあると思います。

私は$("a[href$=/Premium-Security-Laser-Check].smallTextLink")実際に何かをつかむとは思わない。

これを試して:

$('a.smallTextLink[href$="Premium-Security-Laser-Check"]').click(function()
{
    alert('clicked the security laster check small text link');
});

それが機能する場合は、セレクターを変更して、replacewith を機能させることができるはずです。

$('a.smallTextLink[href=/Premium-Security-Laser-Check]').parent() .replaceWith('<td class="productListing-data" style="border-left:1px solid #FFF; border-top:1px solid #FFF; border-bottom:1px solid #808080; border-right:1px solid #808080;"><div class="leftSide"><a href="http://www.writeguard.com/catalog/Checks/LaserInkjet-Checks/Premium-Security-Laser-Check" class="smallTextLink">Premium Security Laser Check</a><ul style="line-height: 1.5em; font-size: 11px; margin-left: -15px;"><li style="color:red;"><strong>Buy 500 Checks, Get 500 Free Special!</strong></li><li>More than 8 security features</li><li>Thermochromic Ink</li><li>8.5" x 11" sheet 24lb MICR paper</li><li>2 perforations @ 3.5" x 7"</li></ul><div class="moreInfoButtonsNew"><a href="http://www.writeguard.com/catalog/Checks/LaserInkjet-Checks/Premium-Security-Laser-Check" class="positive"><img src="http://writeguard.com/catalog/images/new_layout/icons/information.png" alt=""/>More Info</a></div></div><div class="rightSide"><p class="ourPrice">Starting At:<br>$39.50</p></div></td>');

于 2012-01-27T21:33:15.387 に答える
0

セレクターは次のようにする必要があります。

$('a.smallTextLink[href$="Premium-Security-Laser-Check"]')

そして、テーブルの構造は次のとおりです。

<tr>
  <td>
    <div>
      <a href='....'>
      ..
      ..

したがって、jQuery ステートメントは td である親を見つける必要があります。parent() は div を返しています。parent('td:first') が td 要素である最初の親を取得する必要があります。

$('a[href$="Premium-Security-Laser-Check"].smallTextLink').parents('td:first')
  .replaceWith(....)
于 2012-01-28T01:54:16.447 に答える