Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery中的嵌套元素搜索_Jquery_Jquery Ui - Fatal编程技术网

jquery中的嵌套元素搜索

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

我正在使用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">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);        
    });