使用jQuery .load函数刷新元素而不重复它
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用jQuery .load函数刷新元素而不重复它相关的知识,希望对你有一定的参考价值。
当用户单击提交按钮时,div .forum
应该刷新(不刷新页面)。但是,出于某种原因,它会在原始div中创建一个新的div .forum
,如:
虽然我知道我可以通过在div .forum
周围添加一个容器来防止这种情况,但我想知道是否有一个选项意味着我不需要容器div?
<div class="forum">
<form id="theforum">
<input type="submit">
</form>
</div>
<script>
$(document).on("submit", "#theforum", function(e)
e.preventDefault();
$(".forum").load(location.href + " .forum");
);
</script>
答案
我现在无法测试它是否可行,但我相信它可以解决您的问题:
$(".forum").load(location.href + " .forum > *");
这样你就不会抓住div本身,而是它的内容。
另一答案
load函数加载不同页面的响应并将其转储到给定元素中。 因此,要更新.forum div,请删除旧的.forum,然后加载新的.for并将其转储到(刚删除)'。forum'的父级中。
$(document).on("submit", "#theforum", function(e)
e.preventDefault();
$('.forum').remove()
$("##FORUMS PARENT TAG##").load(location.href + " .forum");
);
祝好运!
供参考:http://api.jquery.com/load/
以上是关于使用jQuery .load函数刷新元素而不重复它的主要内容,如果未能解决你的问题,请参考以下文章
生成 Jekyll Liquid 内容而不包含它(仅来自 JQuery 加载函数)
DoPostBack在load()jquery函数中调用javascript