-4

我想将我$.post的呼叫转换为$.ajax呼叫,因为我需要为每个呼叫清理缓存。

我的$.post电话如下:

        $.post("test",   
            function(data) {
                $("#test").html(data);
                initTest();
            }
        ).success(function(){
            $('.box1').hide("slide", {direction: "left"}, 1000);
            $('.box3').show("slide", {direction: "right"}, 1000);
        });

我试过这个,但它不起作用......

    $.ajax({
          type: "POST",
          url: "test",
          success: function (data) {
              $("#test").html(data);
              $('.box1').hide("slide", {direction: "left"}, 1000);
              $('.box3').show("slide", {direction: "right"}, 1000);
          },
          dataType: "json",
          cache: false
    });
4

2 回答 2

2
$.ajax({
   method:"POST",
   url : "test.php",
   success : function(data) {
                $("#test").html(data);
                initTest();
                 $('.box1').hide("slide", {direction: "left"}, 1000);
     $('.box3').show("slide", {direction: "right"}, 1000);
            },
   cache : false
});

更新我认为您在解析数据时遇到问题。$.post默认情况下是html dataType. 在$.ajax通话中,您将其更改为“json”。如果没有响应 json,那么您有解析错误和成功处理程序不调用。

于 2012-04-25T11:20:37.447 回答
1
 $.ajax('test')
    .done(function() {
      $('.box1').hide('slide', {direction: 'left'}, 1000);
      $('.box3').show('slide', {direction: 'right'}, 1000);
    })
    .fail(function() { alert('error'); })
    .always(function() { alert('complete'); });
于 2012-04-25T11:22:32.063 回答