当我点击元素test2
test1
<ul>
<li id="test1"><a href="javascript: void(0);">Label one</a>
<ul id="test2">
<li><a href="test.php">test</a></li>
</ul>
</li>
<li id="test3"><a href="javascript: void(0);">Label two</a>
<ul id="test4">
<li><a href="test.php">test</a></li>
</ul>
</li>
</ul>
点击test2
时如何获取对象li id="test1"
?
答案 0 :(得分:2)
$('li').click(function(){
var $target = $(this).children('ul');
});
答案 1 :(得分:2)
使用jquery:
$('#test1').on('click', function (e) {
var test2 = $('#test2);
});
vanilla javascript:
var test1 = document.getElementById('test1');
test.addEventListener('click', grabTest2, false);
function grabTest2() {
var test2 = document.getElementById('test2');
}
答案 2 :(得分:1)
最好通过class
来识别元素,而不是使用ids
。我已将liClass
类用于父级li,将ulClass
用于子级ul。如果您使用的是neigher class或id,这将save
生成lot of ids
及其操作,并且不会影响页面上的其他li和ul。
<强> Live Demo 强>
HTML 的
<ul>
<li id="test1" class="liClass"><a href="javascript: void(0);">Детские коляски</a>
<ul id="test2" class="ulClass">
<li><a href="test.php">test</a></li>
</ul>
</li>
<li id="test3"><a href="javascript: void(0);">Детские коляски</a>
<ul id="test4">
<li><a href="test.php">test</a></li>
</ul>
</li>
</ul>
的Javascript
$('.liClass').click(function(){
obj = $(this).find('.ulClass');
})
答案 3 :(得分:0)
在您的热门ul
元素
<ul class="test">
<li id="test1">
<a href="javascript: void(0);">Детские коляски</a>
<ul id="test2">
<li><a href="test.php">test</a></li>
</ul>
</li>
<li id="test3">
<a href="javascript: void(0);">Детские коляски</a>
<ul id="test4">
<li><a href="test.php">test</a></li>
</ul>
</li>
</ul>
然后
<script>
$(function(){
$('.test > li').click(function(){
var childUl = $(this).children('ul');
// do what you want with childUl
});
});
</script>
答案 4 :(得分:0)
您似乎希望点击a
中的li
标记功能。
你需要至少定义一个类。(或者包括像div>ul>li>a
这样的父元素)
$('ul.parent > li > a').click(function(){
var obj = $(this).parent().children('ul'); //going back one step and selecting the child element
});
检查fiddle
如果您想要li
本身的点击功能,那么请使用其他解决方案(或尝试更改我提供的上述解决方案)
我不确定是否建议这样做。