Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.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
Javascript jQuery和单击的元素中的第一个元素_Javascript_Jquery_Html - Fatal编程技术网

Javascript jQuery和单击的元素中的第一个元素

Javascript jQuery和单击的元素中的第一个元素,javascript,jquery,html,Javascript,Jquery,Html,我有2个div元素,如果我单击第一个div,那么应该显示单击的div中的另一个div,但我不知道它是谁工作的,我的jquery代码是这样的: jQuery('.infobutton').click(function(){ var clickedID = jQuery(this).attr('id'); jQuery(clickedID).children('div').toggle(); }); <div class="infobutton" id="infobtn1"

我有2个div元素,如果我单击第一个div,那么应该显示单击的div中的另一个div,但我不知道它是谁工作的,我的jquery代码是这样的:

jQuery('.infobutton').click(function(){
    var clickedID = jQuery(this).attr('id');
    jQuery(clickedID).children('div').toggle(); 
});

<div class="infobutton" id="infobtn1">
    <div class="content">some content</div>
</div>
jQuery('.infobutton')。单击(函数(){
var clickedID=jQuery(this.attr('id');
jQuery(clickedID).children('div').toggle();
});
一些内容
我每次都获得了正确的id,我还尝试了
.first()
.parent()
.children('.content')


使用jQuery可以做到这一点吗?

在事件处理程序内部
这将引用处理程序所附加到的元素

jQuery('.infobutton').click(function(){
    jQuery(this).children('.content').toggle(); 
});
演示:

使用

引用事件中的当前元素

您的代码将作为


使用
jQuery(“#”+clickedID)
而不是
jQuery(clickedID)

假设您有如下HTML:

<div id="container" class="infobutton">
    Some content
    <div>Some other content</div>
</div>
使用class
infobutton
查找元素,并指定
单击处理程序。这个很好用

var clickedID = jQuery(this).attr('id');
将该元素的
id
放入变量
单击edid
clickedID
的值现在是
container

jQuery(clickedID).children('div').toggle(); 
单击edid
上运行jQuery选择器我们遇到了问题。这可以归结为
jQuery('container')
。这将查找标记名为
container
的元素,而不是ID为
container
的元素

jQuery(clickedID).children('div').toggle(); 
事实上,解决所有这些问题的办法是根本不使用ID。相反,您可以使用
this
构建jQuery对象,它是对单击元素的引用:

jQuery('.infobutton').click(function(){
    jQuery(this).children('div').toggle(); 
});
某些内容
$(“infobtn1”)
不是按ID选择元素的正确选择器。
jQuery('.infobutton').click(function(){
    jQuery(this).children('div').toggle(); 
});