如何通过ajax重新加载数据

时间:2017-07-20 12:27:23

标签: jquery ajax

我有一种获取所有产品的方法

function listProducts() {
  $.get("./listProducts", function(data) {
    data.forEach(function(item) {
      var $clone = $('#product').clone().removeAttr('id');
      $clone.find('.productName').text(item.nameEn);
      $clone.appendTo('#rowProducts');
    });
 });
};

我有另一种添加产品的方法,我想在添加新产品时,在成功方法中它会重新加载到以前的方法listProducts()以获取新产品列表

$(document).ready(function() {
  $('#validProduct').on("click", function(e) {
     ......
    $.ajax({
        type : "POST",
        contentType : "application/json",
        url : "./addProduct",
        data : JSON.stringify(product),
        dataType : 'json',
        timeout : 6000,
        success : function(data) {
         /* **reload listProducts** */
        }
    });
  });
});

3 个答案:

答案 0 :(得分:2)

回想一下这个功能

$(document).ready(function() {
  $('#validProduct').on("click", function(e) {
     ......
    $.ajax({
        type : "POST",
        contentType : "application/json",
        url : "./addProduct",
        data : JSON.stringify(product),
        dataType : 'json',
        timeout : 6000,
        success : function(data) {
         listProducts();//just recall the function here
        }
    });
  });
});

答案 1 :(得分:1)

试试这段代码......

$(document).ready(function() {
  $('#validProduct').on("click", function(e) {
    ......
    $.ajax({
      type: "POST",
      contentType: "application/json",
      url: "./addProduct",
      data: JSON.stringify(product),
      dataType: 'json',
      timeout: 6000,
      success: function(data) {
        //recall this function
        listProducts();
      }
    });
  });
});

答案 2 :(得分:0)

使用window.location.replace("your lising product url");

成功调用ajax函数。

我在下面修改了你的jquery。希望这对你有用。

$(document).ready(function() {
  $('#validProduct').on("click", function(e) {
     ......
    $.ajax({
        type : "POST",
        contentType : "application/json",
        url : "./addProduct",
        data : JSON.stringify(product),
        dataType : 'json',
        timeout : 6000,
        success : function(data) {
         /* **reload listProducts** */
            window.location.replace("your lising product url");
        }
    });
  });
});