我想构建一个处理一些文件的Web服务。
这是我想要做的:
这里的问题是:我希望文件在上传后立即在后台中进行处理,完成后,.append()
生成的结果将显示在当前视图中。我不想要将脚本分配给<form action="processing_script.php">...
,因为在点击上传按钮后,用户将被重定向到processing_script.php
。
任何线索?也许一些整洁的ajax电话?
答案 0 :(得分:1)
function ajaxRequest(){
var activexmodes=["Msxml2.XMLHTTP", "Microsoft.XMLHTTP"] //activeX versions to check for in IE
if (window.ActiveXObject){ //Test for support for ActiveXObject in IE first (as XMLHttpRequest in IE7 is broken)
for (var i=0; i<activexmodes.length; i++){
try{
return new ActiveXObject(activexmodes[i])
}
catch(e){
//suppress error
}
}
}
else if (window.XMLHttpRequest) // if Mozilla, Safari etc
return new XMLHttpRequest()
else
return false
}
function postFile(){
var mypostrequest=new ajaxRequest()
mypostrequest.onreadystatechange=function(){
if (mypostrequest.readyState==4){
if (mypostrequest.status==200 || window.location.href.indexOf("http")==-1){
document.getElementById("my_Result_tag").innerHTML=mypostrequest.responseText //this is where the results will be put!
}
else{
alert("An error has occured making the request")
}
}
}
var file = document.getElementById("my_file");
var parameters="file="+file //i am not sure of this peice though
mypostrequest.open("POST", "basicform.php", true)
mypostrequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded")
mypostrequest.send(parameters)
}
答案 1 :(得分:0)
是的,你需要ajax。像往常一样创建表单,然后使用Ajax提交它。表格处理可以照常进行。
如果你谷歌'文件上传Ajax'我相信你可以找到你需要的一切:)
答案 2 :(得分:0)