jQuery: заменить изображение, если строка не равна искомой строке - PullRequest
0 голосов
/ 16 августа 2011

В основном я пытаюсь найти страницу, когда она загружается для строки "Количество на складе: 7".Если он не может найти эту строку, он заменит [img id = "product_photo" src = "bleh.gif"] изображением, указанным в приведенном ниже источнике.Если строка найдена, я не хочу, чтобы изображение заменялось.

Мы хотим, чтобы, если количество товара на нашем сайте не равнялось 7, мы хотели бы отобразить изображение, снятое с депозита, вместоИзображение продукта.Однако приведенный ниже код не работает для меня.Я не прошу волшебного решения (хотя это было бы неплохо), даже приветствуется толчок в правильном направлении.

Ниже приведен код, который я придумал, и я новичок в JavaScript, пытающийсяучиться, как я иду, так что прости меня, если код не прав.Я собрал это воедино, используя свои ограниченные знания и помощь из других статей о переполнении стека.

<script type="text/javascript">
window.onload = function() {
    var foundin = $('*:contains("Quantity in Stock:7")');
    If (foundin != "Quantity in Stock:7") {
    $("#product_photo").attr("src", "/v/vspfiles/templates/Raceweek/images/dt_image.gif");
    }
};
</script>

Заранее спасибо, Camo

1 Ответ

0 голосов
/ 16 августа 2011

$('*:contains("Quantity in Stock:7")') не возвращает строку.Он возвращает набор jQuery соответствующих элементов.

В вашем случае, если он найдет вашу строку, соответствующий набор не будет пустым.Поэтому мы проверим длину соответствующего набора:

$(function() {
    var foundin = $('body:contains("Quantity in Stock:7")');

    if ( ! foundin.length ) {
        $("#product_photo").attr("src", "/v/vspfiles/templates/Raceweek/images/dt_image.gif");
    }
});

Примечание: вам не нужно запускать этот contains на всей странице!Запустите его только для элемента, который содержит количество.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...