Javascript 在以excel格式导出时如何在ajax中指定文件名
在这段代码中,我想在下载excel格式时指定文件名Javascript 在以excel格式导出时如何在ajax中指定文件名,javascript,php,ajax,Javascript,Php,Ajax,在这段代码中,我想在下载excel格式时指定文件名 if(comp_id != "Select Company") { $.ajax({ url: 'includes/export.php', data: { action: 'compreport', 'comp':comp_id, }, type: 'post', success: function (output) { $("#ereportview")
if(comp_id != "Select Company")
{
$.ajax({
url: 'includes/export.php',
data: {
action: 'compreport',
'comp':comp_id,
},
type: 'post',
success: function (output) {
$("#ereportview").html(output);
window.open('data:application/vnd.ms-excel,' + encodeURIComponent( $('div[id$=ereportview]').html()));
e.preventDefault();
},
async: false
});
}
在success
回调中使用此选项
function download(filename, text, mime) {
var element = document.createElement('a');
element.setAttribute('href', 'data:'+mime+',' + encodeURIComponent(text));
element.setAttribute('download', filename);
element.style.display = 'none';
document.body.appendChild(element);
element.click();
document.body.removeChild(element);
}
您可以这样使用它:
if(comp_id != "Select Company") {
$.ajax({
url: 'includes/export.php',
data: {
action: 'compreport',
'comp':comp_id,
},
type: 'post',
success: function (output) {
download("yourfile.xlsx", output, 'application/vnd.ms-excel');
},
async: false
});
}
您可以为正在下载的内容类型指定MIME。你可以从中得到,请你解释一下好吗??什么文件名我想在该代码中分配下载的excel文件名试试这个:如果你也可以不使用ajax下载。它采用随机文件名。我知道有HTTP头内容配置来指定下载文件名。但这是HTTP响应头。我不知道如何在数据url模式中设置头。一种可能的解决方案是,您可以在“div[id$=ereportview]”中添加元数据。只要加上。我尝试过这个解决方案。我想下载pdf格式意味着如何编辑此代码我需要pdf格式的输出您的代码是excel的file@KalaivaniM问题是“在以excel格式导出时如何在ajax中指定文件名”。如果你有新问题,请作为新问题提问。