導航:首頁 > 版本升級 > js實現文件的上傳

js實現文件的上傳

發布時間:2021-02-23 20:18:08

『壹』 轉<幾種js實現的動態多文件上傳>

也就是說上傳的最大個數是寫死了的。
html<p<ahref='#'onclick='javascript:viewnone(more1)'添加附件</a<divid='more1'style='display:none'<inputtype="file"name="attach1"size="50"javascript:viewnone(more2)</span</div<divid='more2'style='display:none'<inputtype="file"name="attach2"size="50"'</div</pjs<SCRIPTlanguage="javascript"functionviewnone(e){
e.style.display=(e.style.display=="none")?"":"none";}</script
方式二:這種方式的動態多文件上傳是實現了的,很簡單的,不說廢話看codehtml<inputtype="button"name="button"value="添加附件"onclick="addInput()"<inputtype="button"name="button"value="刪除附件"onclick="deleteInput()"<spanid="upload"</spanjs<scripttype="text/javascript"varattachname="attach";vari=1;functionaddInput(){if(i0){varattach=attachname+i;if(createInput(attach))i=i+1;}}functiondeleteInput(){if(i1){i=i-1;if(!removeInput())i=i+1;}}functioncreateInput(nm){varaElement=document.createElement("input");aElement.name=nm;aElement.id=nm;aElement.type="file";aElement.size="50";//aElement.value="thanks";//aElement.on
click=Function("asdf()");if(document.getElementById("upload"
).appendChild(aElement)==null)returnfalse;returntrue;}functionremoveInput(nm){varaElement=document.getElementById("upload");if(aElement.removeChild(aElement.lastChild)==null)returnfalse;returntrue;}</script
方式三:動態多文件上傳,只是在oFileInput.click();這個地方,這樣做就不能上傳這個文件了,因為發現它在上傳之時就把這個input中的文件置空了。很可能是為了安全著想吧!
另外還有一點就是說,click()只有在ie中才能正常運行。
雖說這種方式最終沒能實現上傳,但還是留下來參考,看看是否有人可以真正實現上傳。

『貳』 如何通過原生JS和jQuery版實現文件上傳功能

代碼

<?php

if (isset($_POST['upload'])) {
var_mp($_FILES);
move_uploaded_file($_FILES['upfile']['tmp_name'], 'up_tmp/'.time().'.dat');
//header('location: test.php');
exit;
}
?>

『叄』 如何讓javascript實現上傳文件呢

ajax 不能上傳文件,可以用很多變通的方法解決。

『肆』 幾種js實現的動態多文件上傳

方式一:事先寫好多個input.在點擊時才顯示。也就是說上傳的最大個數是寫死了的。
html

<p>
<a href='#' onclick='javascript:viewnone(more1)'> 添加附件 </a>
<div id='more1' style='display:none'>
<input type="file" name="attach1" size="50"javascript:viewnone(more2)>
</span>
</div>
<div id='more2' style='display:none'>
<input type="file" name="attach2" size="50"'>
</div>
</p>
js
<SCRIPT language="javascript">
function viewnone(e){
e.style.display=(e.style.display=="none")?"":"none";
}
</script>

方式二:這種方式的動態多文件上傳是實現了的,很簡單的,不說廢話看code
html

<input type="button" name="button" value="添加附件" onclick="addInput()">
<input type="button" name="button" value="刪除附件" onclick="deleteInput()">
<span id="upload"></span>
js

<script type="text/javascript">
var attachname = "attach";
var i=1;
function addInput(){
if(i>0){
var attach = attachname + i ;
if(createInput(attach))
i=i+1;
}

}
function deleteInput(){
if(i>1){
i=i-1;
if(!removeInput())
i=i+1;
}
}

function createInput(nm){
var aElement=document.createElement("input");
aElement.name=nm;
aElement.id=nm;
aElement.type="file";
aElement.size="50";
//aElement.value="thanks";
//aElement.onclick=Function("asdf()");
if(document.getElementById("upload").appendChild(aElement) == null)
return false;
return true;
}

function removeInput(nm){
var aElement = document.getElementById("upload");
if(aElement.removeChild(aElement.lastChild) == null)
return false;
return true;
}

</script>

方式三:動態多文件上傳,只是在oFileInput.click();這個地方,這樣做就不能上傳這個文件了,因為發現它在上傳之時就把這個input中的文件置空了。很可能是為了安全著想吧!
另外還有一點就是說,click()只有在ie中才能正常運行。
雖說這種方式最終沒能實現上傳,但還是留下來參考,看看是否有人可以真正實現上傳。
html

<A href="javascript:newUpload();">添加附件</A>
<TABLE width="100%" border="0" cellpadding="0" cellspacing="1">
<TBODY id="fileList"></TBODY>
</TABLE>
<DIV id="uploadFiles" style="display:block"></DIV>
js

<SCRIPT language="javascript">

//---新建上傳
function newUpload(){
var oFileList = document.getElementById("fileList");
var fileCount = oFileList.childNodes.length + 1;
var oFileInput = newFileInput("upfile_" + fileCount);
if(selectFile(oFileInput)){
addFile(oFileInput);
}
}

//----選擇文件
function selectFile(oFileInput){
var oUploadFiles = document.getElementById("uploadFiles");
oUploadFiles.appendChild(oFileInput);
oFileInput.focus();
oFileInput.click();//不能這樣做,可能是為了安全著想吧!
var fileValue = oFileInput.value;
if(fileValue == ""){
oUploadFiles.removeChild(oFileInput);
return false;
}
else
return true;

}

//---新建一個文件顯示列表
function addFile(oFileInput){
var oFileList = document.getElementById("fileList");
var fileIndex = oFileList.childNodes.length + 1;
var oTR = document.createElement("TR");
var oTD1 = document.createElement("TD");
var oTD2 = document.createElement("TD");

oTR.setAttribute("id","file_" + fileIndex);
oTR.setAttribute("bgcolor","#FFFFFF");
oTD1.setAttribute("width","6%");
oTD2.setAttribute("width","94%");
oTD2.setAttribute("align","left");
oTD2.innerText = oFileInput.value;
oTD1.innerHTML = '<A href="javascript:removeFile('+ fileIndex + ');">刪除</A>';

oTR.appendChild(oTD1);
oTR.appendChild(oTD2);
oFileList.appendChild(oTR);
}

//---移除上傳的文件
function removeFile(fileIndex){
var oFileInput = document.getElementById("upfile_" + fileIndex);
var oTR = document.getElementById("file_" + fileIndex);
uploadFiles.removeChild(oFileInput);
fileList.removeChild(oTR);
}

//---創建一個file input對象並返回
function newFileInput(_name){
var oFileInput = document.createElement("INPUT");
oFileInput.type = "file";
oFileInput.id = _name;
oFileInput.name = _name;
oFileInput.size="50";
//oFileInput.setAttribute("id",_name);
//oFileInput.setAttribute("name",_name);
//oFileInput.outerHTML = '<INPUT type=file id=' + _name + ' name=' + _name + '>';
//alert(oFileInput.outerHTML);
return oFileInput;
}

</SCRIPT>

『伍』 js超大文件上傳如何實現

利用File文件介面將文件切成順序的若干小片,然後上傳到伺服器,全部上傳完後由服務端進行合並和校驗

『陸』 js 大文件分片上傳處理如何實現

推薦採用webuploader控制項來解決。
關於WebUploader的功能說明:
大文件上傳續傳
支持超大文件上傳(100G+)和續傳,可以關閉瀏覽器,重啟系統後仍然繼續上傳。
開源
提供ASP.NET,JSP,PHP示例和源代碼,其中JSP提供MySQL,Oracle,SQL Server資料庫的配置和示例代碼。
分片、並發
分片與並發結合,將一個大文件分割成多塊,並發上傳,極大地提高大文件的上傳速度。
網路問題導致傳輸錯誤時,只需要重傳出錯分片,而不是整個文件。另外分片傳輸能夠更加實時的跟蹤上傳進度。
預覽、壓縮
支持常用圖片格式jpg,jpeg,gif,bmp,png預覽與壓縮,節省網路數據傳輸。
解析jpeg中的meta信息,對於各種orientation做了正確的處理,同時壓縮後上傳保留圖片的所有原始meta數據。
多途徑添加文件
支持文件多選,類型過濾,拖拽(文件&文件夾),圖片粘貼功能。上傳本地指定路徑的文件,不需要通過點擊按鈕選擇文件。
粘貼功能主要體現在當有圖片數據在剪切板中時(截屏工具如QQ(Ctrl + ALT + A), 網頁中右擊圖片點擊復制),Ctrl + V便可添加此圖片文件。
HTML5 & FLASH
兼容主流瀏覽器和低版本瀏覽器,介面一致,實現了兩套運行時支持,用戶無需關心內部用了什麼內核。而且支持IE6,IE8瀏覽器。
同時Flash部分沒有做任何UI相關的工作,方便不關心flash的用戶擴展和自定義業務需求。
基於內存映射模式進行IO操作,充分發揮操作系統性能。
MD5秒傳
當文件體積大、量比較多時,支持上傳前做文件md5值驗證,一致則可直接跳過。
如果服務端與前端統一修改演算法,取段md5,可大大提升驗證性能,耗時在20ms左右。
易擴展、可拆分
採用可拆分機制, 將各個功能獨立成了小組件,可自由搭配。
採用AMD規范組織代碼,清晰明了,方便高級玩家擴展。

『柒』 純js怎麼實現上傳文件的功能

||html:<input type="file" id="test-file-upload">

js:
var f = document.getElementById('test-file-upload');
var filename = f.value; // 'C:\fakepath\test.png'
if (!回filename ||答 !(filename.endsWith('.jpg') || filename.endsWith('.png') || filename.endsWith('.gif'))) {
alert('Can only upload image file.');
return false;
}

『捌』 js 文件上傳

你說呢?
首先,暫且不討論他能不能上傳
我們假設他能上傳
js和html都是客戶端語言,也就內是說,由客戶端的瀏容覽器執行的
假設他有上傳功能,那麼,是不是這樣的一個情況呢,就是用戶點擊他自己電腦上的文件,上傳到他自己電腦上
那麼,上傳不上傳,文件都還是在用戶的電腦上,那還上傳他幹嘛啊?

『玖』 js編輯文本 上傳為文件 怎麼實現

到後復台制在專為文件即可

$.ajax({
url:"a.php?text=wfhjadbfjsahfwqfbadbn&filename=aaa.txt"

});

a.php

<?

content = $_GET['text'];

$file1 = $_GET['filename'].'txt';

$fp = fopen($file1, 'w');

fwrite($fp, $content);

fclose($fp);

?>

『拾』 js 如何實現線程上傳文件

js上傳?????

一般來講,上傳的文件超過百M,都需要插件了,但幾十M就很卡,要麼程序寫的有問題,要麼你的機器有問題。

樓主去試試人家的網盤上傳,看看自己的機器卡不卡~

閱讀全文

與js實現文件的上傳相關的資料

熱點內容
一本小說主角是木匠 瀏覽:272
如何從ftp下載文件夾 瀏覽:963
一隻狗和兩個男孩的電影 瀏覽:266
兩台windows怎麼傳文件 瀏覽:937
哪裡能看周星馳電影粵語版 瀏覽:66
無線感測器網路技術的實現方法 瀏覽:447
如何把文件中同類型文件選出來 瀏覽:307
信德財務軟體備份文件 瀏覽:884
如何無線手機注冊app 瀏覽:425
哪個付費小說app最好 瀏覽:58
文件名使用通配符的作用 瀏覽:339
!4_ '6h[Bz9zd.F 瀏覽:553
李釆潭 作品 瀏覽:9
有一部電影男主有雀斑 瀏覽:473
數據字典保存哪些信息 瀏覽:63
文件夾的圖片怎麼復制到word 瀏覽:110
壓縮文件照片如何導到桌面 瀏覽:605
ios中如何讀取doc文件 瀏覽:786
能在線播放的電影你懂的 瀏覽:11

友情鏈接