使用jquery获取父元素的子元素
我有一个自动生成HTML代码的页面,如下所示:使用jquery获取父元素的子元素,jquery,Jquery,我有一个自动生成HTML代码的页面,如下所示: <span> <img class="myimage" src="example.jpg"/> <button onclick="do()">Do something</button> </span> <span> <img class="myimage" src="example2.jpg"/> <button onclick="do()">Do s
<span>
<img class="myimage" src="example.jpg"/>
<button onclick="do()">Do something</button>
</span>
<span>
<img class="myimage" src="example2.jpg"/>
<button onclick="do()">Do something</button>
</span>
在函数
中,此
指的是窗口对象
要使功能正常工作,每个按钮都应将此即自身传递给功能。此外,正如评论中提到的@T.J.Crowder,您不能将do
用作函数名-它是一个函数名
有两个问题:
do
的函数do
是一个关键字此函数中的
将是对全局对象的引用,而不是对单击的按钮的引用this
将引用该按钮),或者更改onclick
属性以将this
传递给它并使用第一个参数$(“.do something btn”)。在(“单击”,函数()上{
var pic=$(this.parent().find(“.myimage”);
警报(图片属性(“src”);
});代码>
做点什么
做点什么
问题之一是:如果打开web控制台,您会发现错误:do
不是有效的函数名,因为它是一个关键字。
function do() {
var pic = $(this).parent().find(".myimage");
//do something
}
<span>
<img class="myimage" src="example.jpg"/>
<button onclick="func(this)">Do something</button>
</span>
<span>
<img class="myimage" src="example2.jpg"/>
<button onclick="func(this)">Do something</button>
</span>
function func(ele) {
var pic = $(ele).parent().find(".myimage");
//do something
}