使用jquery和coldfusion下载ajax文件
当点击处理从服务器下载文件的coldfusion页面时,我有一个链接。当我直接在url中访问该文件时,它会正常工作,因此我知道该部分正在工作。我的下一步是引入ajax,这样交互对用户来说是无缝的。这是我的带有ajax调用的事件处理程序(在初始页面加载时调用事件处理程序): 但我什么也得不到。这是我第一次使用jQuery的.ajax()。我通常使用.get()和.load()。我已经检查了文档,我的语法看起来是正确的。有人看到我为什么不能在浏览器提示下保存文件的问题了吗?谢谢 不能通过Ajax(XMLHTTPRequest)触发“另存为”对话框。Ajax调用将数据从服务器返回到javascript应用程序,这就是使用Ajax的关键所在。下载文件并将其保存在计算机上只是另一个用例——这是一个“浏览器作业”,而不是你的 我通过在页面上添加一个隐藏的iframe解决了这个“问题”,这将触发一个“另存为…”对话框,用户不会注意到它。这就像在另一个选项卡中打开一个地址,只是它被隐藏了使用jquery和coldfusion下载ajax文件,jquery,ajax,coldfusion,download,Jquery,Ajax,Coldfusion,Download,当点击处理从服务器下载文件的coldfusion页面时,我有一个链接。当我直接在url中访问该文件时,它会正常工作,因此我知道该部分正在工作。我的下一步是引入ajax,这样交互对用户来说是无缝的。这是我的带有ajax调用的事件处理程序(在初始页面加载时调用事件处理程序): 但我什么也得不到。这是我第一次使用jQuery的.ajax()。我通常使用.get()和.load()。我已经检查了文档,我的语法看起来是正确的。有人看到我为什么不能在浏览器提示下保存文件的问题了吗?谢谢 不能通过Ajax(X
$('body').append(
$('<iframe>', {
src: 'test.cfm?name=john'
}).hide()
);
$('body')。追加(
$('', {
src:'test.cfm?name=john'
}).hide()
);
不能通过Ajax(XMLHTTPRequest)触发“另存为”对话框。Ajax调用将数据从服务器返回到javascript应用程序,这就是使用Ajax的关键所在。下载文件并将其保存在计算机上只是另一个用例——这是一个“浏览器作业”,而不是你的
我通过在页面上添加一个隐藏的iframe解决了这个“问题”,这将触发一个“另存为…”对话框,用户不会注意到它。这就像在另一个选项卡中打开一个地址,只是它被隐藏了
$('body').append(
$('<iframe>', {
src: 'test.cfm?name=john'
}).hide()
);
$('body')。追加(
$('', {
src:'test.cfm?name=john'
}).hide()
);
谢谢您的回答!是否有文档可以解释为什么会这样?另外,这意味着表单提交,对吗?我已经在其他地方提交了表格:/I页面上也已经有了一个iframe。以这种方式选择元素会移动iframe,而不会克隆它?我不能那样做。如果我选择了我已有的iframe,并设置了src属性,这会起作用吗?关于为什么不使用$('')选择现有的iframe,谢谢你的回答!是否有文档可以解释为什么会这样?另外,这意味着表单提交,对吗?我已经在其他地方提交了表格:/I页面上也已经有了一个iframe。以这种方式选择元素会移动iframe,而不会克隆它?我不能那样做。如果我选择我已经拥有的iframe,并设置src属性,这会起作用吗?关于为什么不使用$('')选择现有的iframe: