jquery中的嵌套元素搜索
我正在使用jQuery和jQueryUI。以下是我的标记:jquery中的嵌套元素搜索,jquery,jquery-ui,Jquery,Jquery Ui,我正在使用jQuery和jQueryUI。以下是我的标记: <div id="content"> <ul id="sortable"> <li class="button_tab"><div id="select_me">Select Me</div></li> <li class="button_tab"><div id="select_me_1"&g
<div id="content">
<ul id="sortable">
<li class="button_tab"><div id="select_me">Select Me</div></li>
<li class="button_tab"><div id="select_me_1">Select Me 1</div></li>
<li class="button_tab"><div id="select_me_2">Select Me 2</div></li>
</ul>
</div>
我试图在单击事件时获取id=“select_me”,但什么也没有发生,因为button()函数插入了特定的类名,我无法正确选择它:
$('div#content ul#sortable li.button_tab div').click(function() {
alert($(this).attr('id'));
});
试一试
或
试一试
或
给定的代码运行良好。然而,调用它们的顺序很重要
.button()
将清除所有单击事件,因为从逻辑上讲它应该处理“单击”。因此,要启用自定义功能,请再次为孩子们单击事件。调用.button()
$(“.button_tab”).button()代码>
$('div#content ul#sortable li.button_tab div')。单击(函数(){
警报($(this.attr('id'));
});代码>
或者,您可以使用.on()
在Jquery中创建一个动态的单击事件监听器。给定的代码工作正常。然而,调用它们的顺序很重要
.button()
将清除所有单击事件,因为从逻辑上讲它应该处理“单击”。因此,要启用自定义功能,请再次为孩子们单击事件。调用.button()
$(“.button_tab”).button()代码>
$('div#content ul#sortable li.button_tab div')。单击(函数(){
警报($(this.attr('id'));
});代码>
或者,您可以使用.on()
在Jquery中创建一个动态的单击事件监听器。似乎它对我也很好。您在控制台中是否收到任何错误?什么是什么意思?您到底看到了什么,任何错误或什么?对我也有效-@Dhiraj Bodicherla我不知道你对你的做了什么,但它对meseems不起作用,就像它对我也起作用一样。你在控制台中有任何错误吗?什么都没有发生,你到底看到了什么,任何错误或什么?对我也有效-@Dhiraj Bodicherla我不知道你对你的做了什么,但对我无效是的,你是对的,谢谢,我在我的代码中做了相反的事情。@johnnyj:-)。如果您绝对想要动态功能,可以为执行.on()
,单击事件。是的,您是对的,谢谢,我在代码中的做法正好相反。@johnnyj:-)。如果绝对需要动态功能,可以为单击事件在()上实现.on
。
$('div#content ul#sortable li.button_tab div').click(function() {
alert($(this).attr('id'));
});
$("#sortable li.button_tab div[id^='button_tab']").click(function() {
alert($(this).attr('id'));
});
$("#sortable li.button_tab").click(function() {
var div_id = $(this).find("div[id^='button_tab']").attr("id");
alert(div_id);
});