2010-01-08 5 views
2

Я чувствую настолько глупым, задавая этот вопрос, но я не могу понять, чистый способ написать это ...Link нажмите функцию родительского объекта для перенаправления HREF

Хереса HTML

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

Я хочу функцию щелчка родительского LI перенаправлять HREF в а с .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! 
    }); 
}); 

ответ

2
$('a.link_parent').each(function() { 
    var link = this; 
    $(this).parent().click(function() { 
     link.attr('href'); 
    }); 
}); 
1
$("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

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

Добавить событие щелчка в элемент «li» и захватить его первый дочерний элемент, то есть элемент «a» и получить его href.