php - 通过 jQuery GET 强制 "Save As"对话框

标签 php jquery get savefiledialog

我在下面的 test.php 文件代码中调用 jQuery“GET”。

我试图让脚本在生成的 test.ini 文件上弹出“另存为”对话框,以允许将其保存在本地。然而,虽然我可以将结果回显给 jQuery,但我似乎无法弹出“另存为”对话框。

更新:由于以下解决方案,我刚刚将 $.get 更改为 window.location.replace。

$('#test').click(
    function()
    {
        //$.get('<?php echo get_bloginfo('template_directory') ?>/test.php');
        window.location.replace("<?php echo get_bloginfo('template_directory') ?>/test.php");

    }
);

最佳答案

您无法获取 ajax 请求来显示“另存为”对话框,但您可以做的是在页面中插入一个隐藏的 iframe 元素,然后将该 iframe 的源设置为您希望用户访问的 url下载。瞧,这就是您的另存为。

这是一个复制和粘贴示例:

$('a#linky').click(function(){
  var iframe = document.createElement("iframe"); 
  iframe.src = 'http://example.com/branding.zip'; 
  iframe.style.display = "none"; 
  document.body.appendChild(iframe);
  return false;
});

关于php - 通过 jQuery GET 强制 "Save As"对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6699461/

相关文章:

javascript - 如何使用backbone.js save()方法在表单提交后上传多个文件?

php - 通过 PHP 获取 Amazon EC2 实例 ID

javascript - 如何在 jQuery 中单击按钮后禁用下拉菜单

get - Bittorrent 跟踪器请求

php - 如何一键发送两个值?

php - 调整大小并保存 html2canvas 生成的图像

php - Laravel 5.1 PHPUnit 使用 JSON 测试 API

php - 更改 Laravel 中的 Assets 助手 URL

php - 更改表单以使用 jQuery 并避免页面刷新

javascript - codeigniter 无法正确调用 jquery 中的 Controller 功能