我试图让Ajax删除同一个Ajax页面中的元素。我通过Ajax使用以下代码调用文档,但它不会删除元素:
<input type="text" value="test" name="someel" class="someelement" />
<script type="text/javascript">
$('.someelement').remove();
</script>
我正在使用datatype ='html'和其他jquery的东西,但只有当我使用像live函数这样的东西时才有效,我不相信你可以使用它来删除元素,但我可能错了。< / p>
感谢。
编辑:
Ajax Call:
$.ajax({
url: someurl,
type: 'post',
data: postvars,
cache: false,
dataType: "html",
success: function (html) {
$('#somediv').html(html);
}
});
编辑2:
示例:REMOVED URL
答案 0 :(得分:2)
您无法在加载元素之前删除元素,因此请使用jquery文档就绪函数等待页面准备就绪。
<input type="text" value="test" name="someel" class="someelement" />
<script type="text/javascript">
$(document).ready(function() {
$('.someelement').remove();
});
</script>
答案 1 :(得分:0)
也许.detach()或.hide()是解决方案吗?
答案 2 :(得分:0)
在成功功能中做任何你需要做的事情。在jQuery中有多种方法可以进行ajax调用,但是这样:
DELETED。不工作......似乎remove()只影响DOM元素。
答案 3 :(得分:0)
.html()函数删除了javascript,因此它不输出,因此即使将dataType设置为html也无法执行。 success函数中的html变量返回完整的javascript,可以向下移动以获得所需的结果。