2013-09-13 2 views
2

У меня есть DIV, который выглядит следующим образом:«неопределенный» не является объект

<em id="ProductPrice" class="ProductPrice VariationProductPrice">$75.00</em> 

И мне нужно, чтобы сделать цвет изменения цвета текста, если есть изменение его значение.

Я написал:

<script> 

$(document).ajaxSuccess(function(){ 

    var currentPrice = $.trim($("#ProductPrice").text()); 

    if(currentPrice == "%%GLOBAL_ProductPrice%%") 
    { 
      $("#ProductPrice").style.color="black"; 
      console.log("black"); 
    } 
    else 
    { 
      $("#ProductPrice").style.color="red"; 
      console.log("red"); 
    } 

}); 

%% GLOBAL_ProductPrice %% переменная в нашей CMS, которая дает базовое значение до возникновения каких-либо изменений.

Я получаю ошибку 'не определено' не является объектом (оценка '& ("#ProductPrice"). Style.color = "красный"')

Что я делаю неправильно?

+0

ли вы получить эту работу? – Sergio

ответ

7

Вы используете селектор jQuery в простом Javascript, не сработаете. В javascript вы можете изменить свойство style, в jQuery у вас есть метод .css(), чтобы сделать это.

Попробуйте вместо этого:

$("#ProductPrice").css('color','black'); 

или равнину Javascript

document.getElementById('ProductPrice').style.color="black"; 
2

Объекты jQuery не имеют объекта недвижимости style. Вы смешиваете jQuery и native js. Попробуйте следующее:

$("#ProductPrice").css('color', 'black'); 
0
$(selector) 

дает вам объект JQuery, а не HTMLElement вы бы попробовать .style ссылаться на.

Попробуйте вместо этого:

$("#ProductPrice").css("color", "red"); 
Смежные вопросы