如何使用extjs调用服务器端脚本并让用户下载文本响应?

时间:2011-07-21 15:59:42

标签: javascript ajax perl extjs

当用户点击extjs工具栏按钮时,我想在服务器上调用perl脚本。点击后,下载对话框应自动打开。

2 个答案:

答案 0 :(得分:1)

您可以使用Ext.Ajax

yourButton.on('click', function(btn, e) {
  Ext.Ajax.request({
    url: 'your_script.pl',
    params: {
        param1: 'The first param',
        param2: 'The second param',
    },
    success: function(response) {
        var text = response.responseText;
        // process server response here. For example
        alert(response.responseText);
    }
  });
});

答案 1 :(得分:1)

Ajax请求无法在浏览器中显示下载对话框,您需要将用户重定向到服务器响应正确内容类型内容的网址-disposition HTTP标头。

您可以使用ExtJS在点击后提交隐藏的表单,或者在工具栏中提供直接链接而不是按钮来制作技巧