当用户单击submit按钮时,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>
发布于 2017-12-27 12:23:43
我现在不能测试这是否有效,但我相信它解决了你的问题:
$(".forum").load(location.href + " .forum > *");
这样你就不会抓取div本身,而是它的内容。
发布于 2017-12-27 12:12:07
load函数加载不同页面的响应,并将其转储到给定元素中。
因此,要更新.forum div,请删除旧的.forum,然后加载新的.forum并将其转储到(刚刚删除)‘..forum’的父目录中。
$(document).on("submit", "#theforum", function(e) {
e.preventDefault();
$('.forum').remove()
$("##FORUMS PARENT TAG##").load(location.href + " .forum");
});
祝好运!
参考:http://api.jquery.com/load/
https://stackoverflow.com/questions/47991946
复制相似问题