Функция щелчка ссылки родительского объекта для перенаправления на href - PullRequest
2 голосов
/ 09 января 2010

Мне так глупо задавать этот вопрос, но я не могу придумать, как написать это ...

Вот HTML

<li>
<a class='link_parent' href='#'>Test</a>
</li>

Я хочу, чтобы функция щелчка родительского LI перенаправляла href a с .link_parent ...

так ...

$('a.link_parent').each(function() {
  $(this).parent().click(function() {
    // Need to access $(this).attr('href') of the above object
    // but can't since $(this) is now the <li> object
    // help!
  });
});

Ответы [ 3 ]

3 голосов
/ 09 января 2010
$('a.link_parent').each(function() {
    var link = this;
    $(this).parent().click(function() {
        link.attr('href');
    });
});
1 голос
/ 09 января 2010
$("li").click(function(){
  $("a.link_parent", this).trigger("click");
});

Просто краткое объяснение области применения. this не единственный способ получить доступ к предметам:

$("a.link_parent").each(function(i,o){
  // 'o' will always be a reference to this anchor
  $(this).parent().click(function(e){
    // 'e.currentTarget' will be a reference to this parent
    alert(o + " " + e.currentTarget);
  });
});
0 голосов
/ 09 января 2010

Вы можете сделать это наоборот. Не знаю точный способ написания JQuery.

Добавьте событие click к элементу "li" и возьмите его первый дочерний элемент, то есть элемент "a:", и получите его ссылку.

...