大家好,我正在寻求一些帮助。
我有一个php页面,在这个页面中我有一些返回div的ajax调用... 在这个div之一我有一个按钮,如果这个按钮将点击我必须删除按钮所在的整个div ..
这是我的代码,现在不工作:(
$(document).ready(function() {
$("#tutn").live('click',function(e){
$("#first_time",e).remove() ;
e.preventDefault() ;
});});
其中id =“first_time”是用ajax调用的div ...这是我的问题..因为即使我点击按钮,div也不会删除.... 在其他世界,我必须删除div的父亲,其中按钮是
这是html代码
<div id="first_time">
<div class="ft_info">
<input type="button" name="tutn" id="tutn" class="tutbtn" value="no" />
</div>
</div>
答案 0 :(得分:3)
如果您确定div存在且其ID为first_time
,请执行
$('#first_time').remove();
第二个参数应该是一个现有的DOM节点,jQuery将开始选择元素的起点。您似乎正在传递event
对象,这不是jQuery所期望的。
此外,无需将第二个参数传递给ID选择器,因为ID在文档中必须是唯一的。
关于风格的最后说明:不要在分号前加上空格,不要节省空间&#34;通过嵌套多个结束})
对。这很糟糕:
$(document).ready(function() {
$("#tutn").live('click',function(e){
$("#first_time",e).remove() ;
e.preventDefault() ;
});});
如果您想要认真对待,那么您必须必须采用某些完善的编码标准:
$(document).ready(function () {
$("#tutn").live('click', function (e) {
$("#first_time",e).remove();
e.preventDefault();
});
});
答案 1 :(得分:2)
您无法从上下文e。
中选择div#first_time只需将$("#first_time",e).remove() ;
更改为$("#first_time").remove() ;
答案 2 :(得分:0)
作为另一种选择,您可以在$(this)
上使用this
方法的两个链式调用删除按钮的“祖父母”,其中$(document).ready(function() {
$("#tutn").live('click',function(e){
e.preventDefault() ;
$(this).parent().parent().remove();
});});
是按钮元素。
{{1}}
答案 3 :(得分:0)
只需要做一个小改动就可以解决它......
$(document).ready(function() {
$("#tutn").live('click',function(e){
$("#first_time").remove() ;
e.preventDefault() ;
});
});
我刚从删除选择器中删除,e
,因为它错了。
答案 4 :(得分:0)
你的错误在第3行:
$("#first_time").remove() ;
那里的e是错的。我想知道你没有得到js错误。
但我也建议使用parent()。
$(document).ready(function() {
$("#tutn").live('click',function(e){
$(this).parent().parent().remove();
});
});
您必须使用parent()两次才能获得$('#first_time')。
我不会使用ID。我会用类解决问题。
答案 5 :(得分:0)
如果你想删除id为first_time的div,你可以这样做:
$(document).ready(function () {
$("#tutn").live('click', function (e) {
$("#first_time").remove();
});
});
但如果id是动态变化的,那么你可以这样做:
$(document).ready(function () {
$("#tutn").live('click', function (e) {
$(this).parent().parent().remove();
});
});