在ajax上成功加载php文件

时间:2015-04-07 03:11:29

标签: jquery ajax

我有一个叫做新闻的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
            }
        });
    });
});

1 个答案:

答案 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)
});