簡體   English   中英

有沒有辦法限制輸入類型文件中的字符數

[英]Is there a way to limit number of characters in input type file

我有一個類型文件的輸入,我的問題是:在我選擇文件后,文件名是否可以限制為一定數量的字符?

您可以使用獲取文件名

var filename = document.getElementById('file-id').value;
filename = filename.replace(/^.*[\\\/]/, '');

但在意義上的限制,上傳文件后,您可以使用上述方法獲取文件名。

然后你可以擁有

if (filename.length < 100 ) {
  //do something
}

僅供參考:只有在客戶端上傳文件后才會發生Evert事件。 在上傳到服務器之前限制文件路徑是沒有用的。

你的意思是這樣的嗎?

var limit = 8;

var fileName = document.getElementById("file-name-field").value();

// get both parts
var fileNameExtension = "." + fileName.split(".").pop();
var fileNameBase = fileName.substring(0, fileName.length()-fileNameExtension.length());

if(fileNameBase.length()>limit){
    // now limit it and set it as fileName
    fileName = fileNameBase.substring(0, limit) + fileNameExtension;
}

大多數瀏覽器不允許修改文件字段的value屬性。 這是一個安全漏洞,因為它允許惡意頁面使用隱藏字段檢索任意文件。

請嘗試使用JavaScript來檢查文件名的長度。

function valueCheck()
{
 var filePath = document.getElementById("file").value;
 var fileName = filePath.replace(/[^\\\/]+$/, "");
    if(fileName !=null && fileName.length >10)
    {
        alert('Filename if bigger');
    }
}

演示網址: http//jsfiddle.net/BhaveshKachhadiya/6EPvg/6/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM