我有一个叫做新闻的div课程。它包含用户的一些更新。当用户提交新的更新时,我希望这个新的更新出现在新闻类的顶部,因为它是新的。
我尝试了以下方法,但它没有按照我想要的方式工作。当我提交表单时,latestpost.php被加载但是新闻div消失了(因为我的prepend()是空的。)
$(document).ready(function () {
$('#new').submit(function (e) {
e.preventDefault();
var form = $(this);
var formData = form.serialize();
$.ajax({
type: 'POST',
url: '/modules/feed/process.php', // the url where we want to POST
data: formData, // our data object
success: function () {
$("#statustext").val(''); // I reset textarea's value here
$(".news").prepend().load("/modules/feed/latestpost.php"); // problematic part
}
});
});
});
答案 0 :(得分:3)
尝试将$.ajax()
替换为.load()
,将context
设置为$(".news")
作为值
$.ajax({
type:"GET",
url:"/modules/feed/latestpost.php",
context:$(".news") // `$(".news")` : `this` within `.then()`
})
.then(function(data) {
this.prepend(data); // `this`:`$(".news")`
}, function(jqxhr, textStatus, errorThrown) {
console.log(errorThrown)
});