Javascript 获取div的父级的父级
我已经搜索并尝试了很多方法来实现这一点,比如Javascript 获取div的父级的父级,javascript,jquery,html,parent,Javascript,Jquery,Html,Parent,我已经搜索并尝试了很多方法来实现这一点,比如nestest()和parents()和parent()和find(),但我根本无法实现 我有这个html <div class='message_holder area2 user45 chatid32'> <a class='avatar' title='jhon'> <img height='28px' width = '28px' src="link to image" />
nestest()
和parents()
和parent()
和find()
,但我根本无法实现
我有这个html
<div class='message_holder area2 user45 chatid32'>
<a class='avatar' title='jhon'>
<img height='28px' width = '28px' src="link to image" />
</a>
<div class='flag_holder'>
<div class='edited png32'></div>
<div class=' png32'></div>
</div>
<div class='message user_chat'> hghgghgh</div>
<div class='like_holder'>
<div class='chattime'>02-12 22:16</div>
<div class='likepng'></div>
<div class='likescore'>5</div>
<div class='unlikescore'>0</div>
<div class='unlikepng'></div>
<div class="like">
<div class="editpng"></div>
<div class="deletepng"></div>
</div>
</div>
</div>
我只是想知道为什么他们不在我的努力下工作。哪里可能是我的错
编辑:
我不知道这是否有一个角色或没有,我有什么我试过在对话框内这样
$(document).on(“click”,“.deletepng”,函数(){
$this=$(this);
$(''+c_delete+'')。对话框({
可调整大小:false,
按钮:{
“是”:函数(){
chat_text_h.html('Removed');//在此处执行操作
$(此).dialog(“关闭”);
//警报($this.nearest(“.like”).html());我可以让它正常工作
//警报($this.parents(“.like_holder”).html()无效
//警报($this.closest(“.like_holder”).html()无效
//警报($this.parent().parent().html());无法工作
//警报($this.closest(“.like_holder”).find(“.like_holder”).html())无效
}
}
});
});
$this.closest(“.like”).html()代码>=>这将返回父div的HTML,删除按钮在其中。不删除元素
$this.parents(“.like_holder”).html()
=>这将返回div.message_holder的html
。不移除该元素
$this.closest(“.like_holder”).html()
=>这将返回div.like_holder的html
$this.parent().parent().html()代码>关闭高,但仍然远=>html
ofdiv.like\u holder
$this.closest(“.like_holder”).find(“.like_holder”).html()
returnnull=>在div.like\u holder
中没有类为like\u holder
的子元素
一类例子
$(document).on(“单击”、“.deletepng”,函数(){
var$parent=$(this.parent().parent();
$parent.find('.likepng').remove();
$parent.find('.unlikepng').remove();
});代码>
.deletepng{
背景色:红色;
}
高生长激素
02-12 22:16
像我一样
5.
0
不像我
删除按钮
您可以访问美元的父项(如下所示):
然而,这通常是不明智的。不过,您将拥有一个jquery对象
让我知道你的进展如何使用最近的
,然后使用第二个参数作为上下文
$(document).on(“click”,“.deletepng”,function()){
var$holder=$(this).closest('.like_holder');
$('.likepng、.unlikepng',$holder.remove();
});代码>
高生长激素
02-12 22:16
喜欢
5.
0
不像
删除
试试这个,你需要父母的兄弟姐妹
alert( $this.closest(".like").parent().find(".unlikescore").html());
alert ($this.closest('.like').siblings('.unlikepng').html()) ;
工作要选择元素父元素的父元素,请尝试以下操作:
$(document).on ("click", ".deletepng", function () {
alert( $($(this).parent()).parent().html());
});
因为您只能对Jquery对象执行parent()方法。
下面是一个与代码无关的示例 两者我都没有定义:(这些对我来说似乎没问题,创建一个提琴。真的吗?你想用变量this
获取你的图像表单框?你不能这样做。你有消息持有者的ID吗?
?我知道它不会删除,先生,我只想在html警报中看到它,然后删除它,但它一直给我未定义且在警报中不起作用的信息。更新了a。)答:是的,我尝试了你的更新,但没有成功。没有删除任何内容。即使在你的代码片段中,我也没有移动“喜欢”和“不喜欢”的div。现在它可以在你的编辑中工作:),哈哈哈,你是天才:)。非常感谢。请稍作解释,这样我现在就可以从你那里学到一些新东西:)。我应该在对话框之前定义它,对吗?
alert( $this.closest(".like").parent().find(".unlikescore").html());
alert ($this.closest('.like').siblings('.unlikepng').html()) ;
$(document).on ("click", ".deletepng", function () {
alert( $($(this).parent()).parent().html());
});