2015-04-21 59 views
0

我发布了一个表单,导致文件被下载。所以我的浏览器页面不会改变。我的表单是form action="/download/file.txt"。我知道我可以使用JQuery并使用AJAX下载文件并使用JQuery回调机制。但是,我不想使用JQuery,因为这是一种学习体验。当我的文件已经下载时,有什么方法可以调用Javascript函数吗?HTTP表单提交回调

回答

0

没有AJAX没有办法做到这一点。因此,无论是使用JQuery的AJAX调用,还是使用纯JS,并使用onreadystatechange事件(http://www.w3schools.com/ajax/ajax_xmlhttprequest_onreadystatechange.asp)。没有JS事件可以在提交完成时触发,方法是将其设置为表单上的属性(如onClick =“”等)。

所以纯JS是可能的AJAX,但你只是使它自己更难

+0

如果使用XMLHttpRequest,该文件将不会被下载,它将被放入一个Javascript变量中。 – Barmar

0

可以使用

<form action="nextStep.php" onsubmit = "return function(){ 
       //download the file here **download/file.txt** 
       //if(downloaded == successful) 
       // set the flag as true 
       //else 
       // set the flas as false 

}" > 

如果是好的,然后去nextStep.php文件

0

答案here使用iframe加载静态文件并在其onload事件中获取通知。你可以检查一样的。