相关疑难解决方法(0)

227
推荐指数
9
解决办法
10万
查看次数

通过ajax调用php下载文件

我有一个按钮,onclick它将调用ajax函数.

这是我的ajax功能

function csv(){

    ajaxRequest = ajax();//ajax() is function that has all the XML HTTP Requests

    postdata = "data=" + document.getElementById("id").value;

    ajaxRequest.onreadystatechange = function(){
        var ajaxDisplay = document.getElementById('ajaxDiv');
        if(ajaxRequest.readyState == 4 && ajaxRequest.status==200){
            ajaxDisplay.innerHTML = ajaxRequest.responseText;           
        }
    }

    ajaxRequest.open("POST","csv.php",false);
    ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    ajaxRequest.send(postdata);
}
Run Code Online (Sandbox Code Playgroud)

我根据用户输入创建了csv文件.创建后,我希望它提示下载或强制下载(最好是强制).我在php文件的末尾使用以下脚本来下载文件.如果我在一个单独的文件中运行此脚本,它工作正常.

$fileName = 'file.csv';
$downloadFileName = 'newfile.csv';

if (file_exists($fileName)) {
    header('Content-Description: File Transfer');
    header('Content-Type: text/csv');
    header('Content-Disposition: attachment; filename='.$downloadFileName);
    ob_clean();
    flush();
    readfile($fileName);
    exit;
}
echo "done";
Run Code Online (Sandbox Code Playgroud)

但是如果我在csv.php的末尾运行它,它会将file.csv的内容输出到页面(进入ajaxDiv)而不是下载.

有没有办法强制下载csv.php末尾的文件?

javascript php ajax download

32
推荐指数
5
解决办法
12万
查看次数

如何使用JavaScript清除浏览历史记录?

我正在做一个简单的项目,让我们采取高度安全的网站.我有5个不同的JSP页面.如果我从第一个JSP页面开始,它将重定向到第二个JSP页面,依此类推.同时,它不应该在我的浏览器历史记录中存储这些页面.如何使用JavaScript清除那些浏览历史记录?

javascript browser-history

19
推荐指数
4
解决办法
14万
查看次数

在下拉列表中更改值时的页面重定向

我有以下代码创建一个下拉列表.
当用户选择一个项目时,我想在控制器中调用某个动作并将新值作为参数传递.

我有以下代码,但这不起作用,当我检查Firebug时,我得到"无效的正则表达式C".

            @Html.DropDownList(
                "ctrlName", 
                items, 
                null,
                new { onchange = "document.location.href = /Controller/Action/this.options[this.selectedIndex].value;" })
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc-3

4
推荐指数
1
解决办法
9250
查看次数

document.location不会改变IE9中的网页?

我试图重定向到IE9(9.0.3)中的不同页面.

当我尝试获取/设置document.location,或document.location.href,或window.location/ window.location.href,我无法这样做.它失败而没有给出任何错误.

我试图检查文档和windows对象是否已设置,它们是,所以我不知道为什么位置对象"丢失".

我尝试了,document.URL并且工作正常,但它是只读的.

任何人都知道问题是什么或如何以跨浏览器的方式实现这一目标?

javascript dom internet-explorer-9

4
推荐指数
1
解决办法
1万
查看次数

window.location.href在IE 11中不起作用

我正在使用Jquery Ajax登录表单.在ajax成功后,我使用重定向页面 window.location.href="test.php"

这在Chrome,Firefox和IE9中工作正常.但在IE 11中,它无法正常工作.

我试过了,

window.location.replace("test.php");
window.location.assign("test.php");
setTimeout('window.navigate("test.php");', 1);
window.open('test.php','_self', null , false);
Run Code Online (Sandbox Code Playgroud)

但都失败了.任何人都可以帮忙吗?

ajax jquery redirect

3
推荐指数
1
解决办法
2万
查看次数

JavaScript - 如何解析 url 中的哈希参数?

如何使用js获取URL哈希的一部分?

这是我所拥有的:

something.html?il=#/new/product/123

我需要将“123”作为变量......

***没有库,请使用纯 JavaScript。

有任何想法吗?

javascript

0
推荐指数
1
解决办法
3万
查看次数