如何在jQuery / Ajax成功方法之后调用另一个php页面?

时间:2016-05-20 08:48:53

标签: php jquery ajax

我遵循Ajax Success方法:

 success: function(data, el){

    var parent = el.find(".jFiler-jProgressBar").parent();

    el.find(".jFiler-jProgressBar").fadeOut("slow", function(){
    $("<div class=\"jFiler-item-others text-success\"><i class=\"icon-jfi-check-circle\"></i> Success <b class=\"text-danger\">&nbsp;&nbsp;&nbsp;<a href=\"#delete_upload_image\">Delete</a></b></div>").hide().appendTo(parent).fadeIn("slow");    
    });

    console.log(data);        
 },

在这种成功方法中,您会看到我有一个链接:

<a href=\"#delete_upload_image\">Delete</a>

console.log(data)

console.log(data)返回String:

mpic_list_573ecaafae8220.41741946 |76|40

现在我希望在点击此链接delete_upload_image.php并使用字符串<a href=\"#delete_upload_image\">Delete</a>mpic_list_573ecaafae8220.41741946以及76 40 >

我的意思是:

delete_upload_image.php页面中,我可以获得3个字符串,当我点击delete链接时会传递该字符串。 `

4 个答案:

答案 0 :(得分:1)

您必须将点击绑定到您将用户发送到所需页面的功能,或者直接在按钮中建立链接。

首先,如果你想分别发送不同的参数,你必须拆分它们。

var params = data.split('|');

然后根据需要使用它,例如将click方法绑定到新链接以创建新的ajax调用。

$('#delete_upload_image').on('click', function() {
    var params = data.split('|');
    var url = "delete_upload_image.php?param1=" + params[0] +"&param2=" + params[1] + "&param3=" + params[2];

    // Make AJAX call as you want to url
    $.get(url);

});

答案 1 :(得分:0)

使用拆分方法在数据中捕获参数:

var stringParam = data.split('|')[0];
var int1Param= data.split('|')[1];
var int2Param= data.split('|')[2];

然后将您的参数放在链接中:

$("<div class=\"jFiler-item-others text-success\"><i class=\"icon-jfi-check-circle\"></i> Success <b class=\"text-danger\">&nbsp;&nbsp;&nbsp;<a href=\"delete_upload_image.php?string="+ stringParam +"&int=" + int1Param + "&secondint=" + int2Param + "\">Delete</a></b></div>").hide().appendTo(parent).fadeIn("slow");

答案 2 :(得分:0)

  1. 您必须将数据放入链接标记:
  2. <a href=\"#delete_upload_image\" data-params='" + data + "'>Delete</a>
    
    1. 然后你可以发送删除请求到&#34; delete_upload_image.php&#34;通过以下代码:
    2. $(function(){
        $('body').on('click', '[href=#delete_upload_image]', function() {
          var params = $(this).data('params').split('|');
          var url = "delete_upload_image.php?param1=" + params[0] +"&param2=" + params[1] + "&param3=" + params[2];
      
          // Make AJAX call as you want to url
          $.get(url);
        });      
      });
      

答案 3 :(得分:0)

现在我明白你的问题是什么了;

您想从console.log获取参数。

但您无法直接获取console.log值。

你能做的是:

  1. 挂钩console.log函数,以便在通过此代码记录时进行存储:
  2. var store = '';
    var oldf = console.log;
    console.log = function(){
       store = JSON.stringify(arguments);
       oldf.apply(console, arguments);
    }
    
    1. 使用以下函数从console_store变量获取参数并删除图像:
    2. function delete_image()
      {
        var params = store.split('|'),
        queryString = $.param({param0:params[0], param1:params[1], param2:params[2]}),
        url = "delete_upload_image.php?" + queryString;
        $.get(url);
      }
      
      1. 在链接点击时调用该函数:
      2. $('body').on('click', '[href=#delete_upload_image]', delete_image);