Замените динамически загружаемую цену ссылкой на изображение, если цена содержит 0,00

Я хочу, чтобы изображение с всплывающей ссылкой появлялось, если цена составляет 0,00 доллара США.

В настоящее время я использую сценарий Jquery, который скрывает динамически сгенерированную цену, если она отображается как 0,00. Это прекрасно работает! Но показывает только текст.

Это тот скрипт:

<script type="text/javascript">
$('.ProductPriceRating em:contains("0.00")').text("Call For A Quote!");
$('.ProductPrice:contains("0.00")').text("Call For A Quote!");
$('.ProductDetails em:contains("0.00")').text("Call For A Quote!");

var text = $('.ProductPrice').text();
var comparingText = 'Call For A Quote!'
if(text == comparingText){
$('.productAddToCartRight').css('display','none'); 
}; 
</script>​

Это всплывающий скрипт, который я хочу реализовать:

<a href="/request-quote/" onclick="return popitup('/request-quote/')"> 
<img src="/product_images/uploaded_images/requestquoteproductbutton.jpg" alt="Request A Quote" title="Request A Quote" /></a>

Я пытаюсь получить изображение с всплывающим окном вместо «Позвонить для цитаты».

Может кто-нибудь помочь?

Спасибо!

РЕДАКТИРОВАТЬ: HTML

<div class='unknown'>
  <div class="Label">
    LNG_RRP:
  </div> 
  <div class="Value"> 
    GLOBAL_RetailPrice
  </div> 
</div> 
<div class="DetailRow PriceRow" style="GLOBAL_HidePrice"> 
  <div class="Label">
    GLOBAL_PriceLabel:
  </div> 
  <div class="Value"> 
    <em class="ProductPrice VariationProductPrice">
      GLOBAL_ProductPrice
    </em>
    GLOBAL_IncludingExcludingTax GLOBAL_YouSave 
   </div>
</div>

Обновление от 27.01.2014 Сейчас я пробую следующий скрипт, и я могу заставить кнопку отображаться вместо динамически сгенерированного текста 0.00. Мне все еще нужна помощь, чтобы всплывающее окно работало.

<script type="text/javascript">
$( '.ProductPriceRating:contains("0.00")' ).replaceWith( '<a href="/request-quote/" onclick="return popup(' + '/request-quote/'+ ')"><img src="http://www.hazardouslocationlighting.net/product_images/uploaded_images/requestquoteproductbutton.jpg" alt="Request A Quote" title="Request A Quote" alt="Request A Quote" title="Request A Quote") /></a>' );
$( '.ProductPrice:contains("0.00")' ).replaceWith( '<a href="/request-quote/" onclick="return popup(' + '/request-quote/'+ ')"><img src="http://www.hazardouslocationlighting.net/product_images/uploaded_images/requestquoteproductbutton.jpg" alt="Request A Quote" title="Request A Quote" alt="Request A Quote" title="Request A Quote") /></a>' );
$( '.ProductDetails:contains("0.00")' ).replaceWith( '<a href="/request-quote/" onclick="return popup(' + '/request-quote/'+ ')"><img src="http://www.hazardouslocationlighting.net/product_images/uploaded_images/requestquoteproductbutton.jpg" alt="Request A Quote" title="Request A Quote" alt="Request A Quote" title="Request A Quote") /></a>' );
</script> 

person Patrick Wood    schedule 24.01.2014    source источник
comment
Итак.. поместите несколько обработчиков .click() на элементы, которые вы заменяете, и пусть обработчик кликов сделает ваше всплывающее окно...   -  person Marc B    schedule 25.01.2014
comment
Что .text('badger') делает, так это заменяет текст каждого элемента на 'badger'. Пожалуйста, предоставьте более подробную информацию: Не могли бы вы опубликовать свою html-разметку? Трудно дать какой-либо совет по конкретному коду разметки без разметки;)   -  person Ninigi    schedule 25.01.2014
comment
‹div class=Ярлык›%%LNG_RRP%%:‹/div› ‹div class=Value› %%GLOBAL_RetailPrice%% ‹/div› ‹/div› ‹div class=DetailRow PriceRow style=%%GLOBAL_HidePrice%%› ‹ div class=Label›%%GLOBAL_PriceLabel%%:‹/div› ‹div class=Value› ‹em class=ProductPrice VariationProductPrice›%%GLOBAL_ProductPrice%%‹/em› %%GLOBAL_IncludingExcludingTax%% %%GLOBAL_YouSave%% ‹/div ›   -  person Patrick Wood    schedule 25.01.2014


Ответы (2)


вместо ... text ("запросить цену") используйте ... html (anchorwithimage); Переменная должна содержать HTML-код изображения и ссылку в виде строки.

person Axel Amthor    schedule 24.01.2014
comment
Я не знаю, как поместить изображение и строку в переменную. - person Patrick Wood; 25.01.2014

Хорошо с разметкой, если вы можете использовать что-то вроде:

var $elements = $('.ProductPrice.VariationProductPrice')

for(i = 0; $elements.length > i; i++){
  if($elements[i].text().indexOf('0.00') >= 0){
    $('.productAddToCartRight').css('display','none'); 
    $elements[i].html('<a href="/request-quote/" onclick="return popitup(' + '/request-quote/'+ ')"><img src="/product_images/uploaded_images/requestquoteproductbutton.jpg" alt="Request A Quote" title="Request A Quote") /></a>')
  } // endif
} // endfor

Все еще много догадок... Более подробная информация приветствуется

person Ninigi    schedule 24.01.2014
comment
для поставить все, что вы хотите быть здесь это будет работать? ‹a href=/request-quote/ onclick=return popitup('/request-quote/')› ‹img src=/product_images/uploaded_images/requestquoteproductbutton.jpg alt=Запросить цитату title=Запросить цитату /› ‹/a › - person Patrick Wood; 25.01.2014
comment
@PatrickWood Отредактированный пример кода. Не стесняйтесь попробовать, хотя я не уверен, что сделает popitup(...) :) - person Ninigi; 25.01.2014
comment
Ничего не делал. Спасибо, что показали мне, как написать это в образце. - person Patrick Wood; 25.01.2014
comment
Попробуйте это редактирование... Если оно по-прежнему не работает, попробуйте предоставить более подробную информацию. Что говорит Firebug? - person Ninigi; 25.01.2014
comment
ballasts.com /флуоресцентный/ - person Patrick Wood; 25.01.2014
comment
Собираюсь забрать это снова в понедельник. Едем домой на выходные. - person Patrick Wood; 25.01.2014
comment
Вышло обновление от 27.01.2014. Все еще не могу заставить всплывающее окно работать правильно. - person Patrick Wood; 27.01.2014