js獲取file選中的文件,jquery獲取file文件

本文目錄一覽:

js獲取HTML5 多文件file選擇的數量

1、並沒有原生的方法控制個數。

2、解決辦法:等選擇完了用js去計算有多少個,如果超出了就提示。思路如下:

1)你可以在選擇完文件後,你的input的onchange事件中,判斷event.target.files.length就可以知道你的文件多少了。

2)在onchange事件中使用

if (event.target.files.length 10) {

console.log(“圖片太多啦!超過十張啦!”);

let files = event.target.files

files = Array.from(files).slice(0,10)

//此處寫你的上傳介面,參數就是files

console.log(“只上傳10張哦”,files)

}

這個方法可以限制文件只需要上傳選中的前10個。

擴展資料:

1、關於input標籤上傳文件,還有一個屬性是accept。可以限制只能上傳圖片類型,這樣可以避免用戶上傳很多非圖片的文件,不好處理。使用方法:input id=”File1″ type=”file”  accept=”image/*”  /

2、調用介面上傳文件的方法,可以使用FormData,FromData 是一次 http mulitpartfrom-data 的請求內容可以使用 append 方法向其添加名詞對,然後使用 XMLHttpRequest 的 send() 方法發送.

eg:

var fileObj = new FromData();

fileObj.append(‘key’,value);   // value 可以是一個字元串 string 也可以是一個 blob (代表,file對象)

var xhr = new XMLHttpRequest();

xhr.open(‘POST’,’url’,true);

xhr.send(fileObj);

參考資料:

MDN技術文檔-input type=’file’/

input file 在js里獲取文件內容

input file在選擇完文件之後,他的值就是這個文件在你機器上的路徑

js本身是不能去讀取這個文件的內容的,比如獲取圖片大小,類型之類

你說的功能是屬於ajax上傳文件,伺服器完成上傳後返迴文件的信息(或者內容),然後再在html上載入出來

這個功能一定要後台來完成

上傳一個文本文件,input file獲取本機路徑,上傳至伺服器,伺服器讀取文本內容返迴文本內容,在html上列印出來

如何利用js在點擊input type=file後選擇好文件後,把選擇的文件名直接複製到另外一個input里?

具體的方法和詳細的操作步驟如下:

1、首先,在打開的vs2015中選擇「文件-新建-文件」,如下圖所示。

2、其次,在打開的「新建文件」窗口中選擇「HTML頁」,如下圖所示。

3、接著,在新的HTML頁面中,我們創建一個要使用的file標籤input  type=”file” /,如下圖所示。

4、然後,修改input標籤的樣式。為了更好地進行說明,這裡標籤上直接寫style,input  type=”file”  style=”background-image:url(‘z:\\pic1.jpg’);”/,如下圖所示。

5、隨後,在這裡通過寫一個a標籤來更改 input=’file’標籤的背景圖像,如下圖所示。

6、最後,全部完成並預覽效果,如下圖所示。

怎麼用js來獲取 file中的上傳文件的文件名

在firefox上,input(type=file)默認獲取到的value值就是文件名。

在IE上,input(type=file)默認獲取到的value值是路徑。

因此用js來獲取fileupload中的上傳文件的文件名需要多方面考慮。

示例代碼:

form action=”” method=”get” onSubmit=”return false;”

input type=”text” name=”test” id=”test”

input type=”file” name=”testFile” onChange=”if(this.value)insertTitle(this.value);”

input type=”submit” value=”提交”

/form

script language=”javascript”

function insertTitle(path){

var test1 = path.lastIndexOf(“/”); //對路徑進行截取

var test2 = path.lastIndexOf(“\\”); //對路徑進行截取

var test= Math.max(test1, test2)

if(test0){

document.getElementById(“test”).value = path;

}else{

document.getElementById(“test”).value = path.substring(test + 1); //賦值文件名

}

}

/script

js 怎麼獲取input type=”file” 所選擇的文件的絕對路徑

安全原因,瀏覽器不提供獲取input type=file的文件路徑,只提供文件的名稱。請換個思路考慮業務實現方案來避免此問題。

原生js獲取文件

HTML5新增了關於文件的File,FileReader兩個對象,用於獲取文件信息和讀取文件信息。

var

    fileInput = document.getElementById(‘test-image-file’),

    info = document.getElementById(‘test-file-info’),

    preview = docement.getElementById(‘test-image-preview’);

//監聽change事件

fileInput.addEventListener(‘change’, function() {

  //清除背景圖片

  preview.style.backgroundImage = ”;

  //檢查文件是否選擇

  if(!fileInput.value) {

    info.innerHTML = ‘沒有選擇文件’;

    return;

  }

  //獲取file文件引用:

  var file = fileInput.files[0];

  //獲取文件信息

  info.innerHTML = ‘文件:’ + file.name + ‘br’ +

                  ‘大小:’ + file.size + ‘br’ +

                  ‘修改:’ + file.lastModifiedDate;

if(file.type !== ‘image/jpeg’ file.type !== ‘image/png’ file.type !== ‘image/gif’) {

  alert(‘不是有效的圖片文件’);

  return;

}

  //讀取文件

  var reader = new FileReader();

  reader.onload = function(e) {

    var data = e.target.result;

  preview.style.backgroundImage = ‘url(‘+ data + ‘)’;

  };

  //以DataURL的形式讀取文件:

  reader.readerAsDataURL(file);

})

原創文章,作者:OYUC,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/137094.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
OYUC的頭像OYUC
上一篇 2024-10-04 00:17
下一篇 2024-10-04 00:17

相關推薦

發表回復

登錄後才能評論