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



我有以下Ajax成功方法:

 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)返回以下字符串:

mpic_list_573ecaafae8220.41741946 |76|40

现在我想调用一个 php 页面,例如:delete_upload_image.php单击此链接后<a href="#delete_upload_image">Delete</a>带有字符串mpic_list_573ecaafae8220.417419467640

我的意思是:

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

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

首先,如果要单独发送不同的参数,则必须拆分它们。

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

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

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");
  1. 您必须将数据放在链接代码中:
<a href="#delete_upload_image" data-params='" + data + "'>Delete</a>
  1. 然后,您可以通过以下代码将删除请求发送到"delete_upload_image.php":
$(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);
  });      
});

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

您希望从控制台.log获取参数。

但不能直接获取控制台.log值。

您可以做的是:

  1. 挂钩控制台.log函数,以便您存储它何时通过以下代码记录:
var store = '';
var oldf = console.log;
console.log = function(){
   store = JSON.stringify(arguments);
   oldf.apply(console, arguments);
}
  1. 使用以下函数从变量中获取参数并删除图像console_store:
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. 在链接单击时调用该函数:
$('body').on('click', '[href=#delete_upload_image]', delete_image);

相关内容

最新更新