Нажмите на div, используя ошибку jquery

#jquery

#jquery

Вопрос:

У меня есть этот HTML:

 <div class="divHolder">
   <a href="./"><img src="./images/image6.jpg"/></a>
</div>
<div class="divHolder">
   <a href="./IT.aspx"><img src="./images/image7.jpg"/></a>
</div>
  

В моем JavaScript у меня есть:

 $('.divHolder').click(function () {

    var link = $(this).find("a").attr("href");

    if (link != null) {
         location.href = link;
    }
});
  

Однако, каждый раз, когда я нажимаю на div, ссылка на div всегда является последней: например, в этом случае: IT.aspx.

Что я сделал не так?

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

1. У меня все работает нормально… Проверьте jsfiddle.net/BSZF7

2. Хм. У меня работает, кроме этого, link конечно, никогда null . Вы пробовали alert редактировать link вместо того, чтобы сразу перенаправлять на него? Мне просто интересно, просто ли это страница по умолчанию, если это правильный термин, IT.aspx и, по сути, в первом случае все, что вы делаете, это удаляете URL до последнего каталога, который затем загрузит страницу по умолчанию в этот каталог.

Ответ №1:

Лучшим способом сделать это было бы следующее

 $('.divHolder:has(a)').click(function () {
  location.href = $(this).find("a").attr("href");
});
  

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

1. Я нахожу это странным, но я исправил эту проблему в своем javascript. Спасибо!