JQuery, если отделение не существует

Я использую 1 js для 2 различных страниц. 1 страница не имеет отделения, которое другой делает. Таким образом, когда я отправляю значения, я получаю a $( ошибка js

для

$('.description'+save_id+'').html(description_val).show(); //update category description

Я подозреваю, что получаю ошибку, потому что нет ничего для показа (). Существует ли короткий код, который я могу использовать, чтобы обнаружить, если div.description существует, иначе не делают функции?

1
задан Cyber Junkie 1 August 2010 в 20:27
поделиться

3 ответа

Если переменная description_val имеет значение undefined , код не будет выполнен.

Попробуйте использовать оператор if () , чтобы запустить код, только если description_val не равно undefined .

if(description_val) {
    $('.description'+save_id+'').html(description_val).show();
}

Или, если по какой-то причине значение description_val может быть значением, которое приравнивается к false , то сделайте следующее:

if(description_val !== undefined) {
    $('.description'+save_id+'').html(description_val).show();
}
0
ответ дан 2 September 2019 в 22:32
поделиться

Из того, что вы опубликовали, я бы проверил, все ли используемые вами переменные определены на данном этапе. Чтобы проверить наличие, вы можете сделать следующее:

if ($('.description' + save_id).size() > 0) {
  // code here that operates on the div.
}

По сути, это просто синтаксическая альтернатива проверке свойства length.

0
ответ дан 2 September 2019 в 22:32
поделиться

jQuery не выдаст ошибку, если ему не над чем работать. show () не будет проблемой. Однако, чтобы ответить на ваш вопрос, вы можете проверить свойство length в объекте jQuery, возвращенном из $ .

2
ответ дан 2 September 2019 в 22:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: