Jquery показывает / скрывает путаницу

#jquery

#jquery

Вопрос:

Я реализовывал это много раз раньше, но я не могу понять, почему это не работает для меня на этот раз. Если содержимое не извлекается, я хочу, чтобы div скрывался.

ИНТЕРФЕЙС

  <div class="title">
    <h2>PRESS</h2>
    <?php echo $info['man_press']; ?>
</div>
  

СКРИПТ

 $(document).ready(function() {
$(".title").each(function() {
  if ($(this).find("p").length > 0) {
     $(this).show();
   }else{
     $(this).hide();
   }
 });
});
  

Комментарии:

1. p Тегов нет — если $info['man_press'] только не выводит один.

2. это работает здесь ссылка

3. @EduardoQuintana предполагая, что p в .title

4. @NickBalistreri ваш код должен работать при условии, что внутри есть тег абзаца .title и jquery включен на вашей странице. У вас есть пример страницы, чтобы продемонстрировать вашу проблему?

5. Используется View Source для подтверждения того, что PHP выдает то, что вы ожидаете. Проблема, скорее всего, в $info['man_press']

Ответ №1:

Попробуйте использовать этот код

 <html>
<head>
<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script>
$(document).ready(function() {
$(".title").each(function() {
  if ($(this).find("p").length > 0) {
     $(this).show();
   }else{
     $(this).hide();
   }
 });
});
</script>
</head>
<body>
<div class="title">
    <h2>PRESS</h2>
    <p>hello</p>
</div>
</body>
</html>
  

** Удалите тег p и попробуйте, он скроет весь div **

Комментарии:

1. Чем это отличается от того, что имеет OP, кроме жесткого кодирования p тега?

2. @RoryMcCrossan если PHP-код (<?php echo $info[‘man_press’]; ?>) возвращает значение присоединения с бирками P и содержимое, затем выше код работает. Значение, которое отображается с сервера, возможно, пропустило p-теги.

3. Публикация того, что по сути является «Ваш код работает для меня», полезна, но это должен быть комментарий, а не ответ.

4. @RoryMcCrossan извините, я не читал ваш предыдущий комментарий. правильно, что теги p отсутствуют в значениях.

Ответ №2:

Спасибо за помощь, ребята, но я проверил свою версию Jquery, и она была очень старой. Быстрое обновление, и теперь все работает отлично. Максимальный новичок