file是一種特殊的input,不能被賦值,也不能被javascript取值,只能隨表單提交內,而且隨表單提交的也是file路徑所指容向的文件本身。
這是瀏覽器安全原因所限制的,如果可以取值和賦值的話,那麼javascript就可以隨意獲取你電腦上的文件了,這是非常危險的
Ⅱ JS 多文件上傳 怎麼獲得文件的本地路徑
flex上傳的是文件流,你應該在服務端接到這個位元組流 將其創建成文件對象 並保存在伺服器專本地磁屬盤中獲得路徑返回給前台,如果你們用node js做的伺服器 也是同理 一定有處理流的方法,關鍵是你要理解flex 通過onload載入成功後在成功事件對象中取得的是 這個文件的信息 包括 位元組流啊 寬高啊 名字啊等等。不知道能否讓你理解。
Ⅲ jsp頁面如何用js獲取上傳文件的真實路徑,不通過修改瀏覽器設置的方式
你應該回去找提供你這段代碼的網頁,看一下getPath函數的參數專obj是什麼,輸入參數有什麼要求屬。
就這段代碼看,obj應該是一個對象,並且這個對象有select()方法;而恰好jQuery對象就有select()方法,有可能(僅僅是有可能)你需要將obj包裝成jQuery對象後,再作為getPath函數的參數代入試試。
提示:
dom對象轉為jQuery對象:有dom元素el,通過$(el)操作就可以轉為jQuery對象
Ⅳ js如何讀取本地txt文件中的內容
通常情況下,網頁中的JS腳本是無法直接對本地文件系統進行訪問的,因為這回涉及到用戶數據安全的問答題,所以,在瀏覽器的默認安全設置下是無法實現的.但如果你可以在本地配置好WEB服務,那麼可以通過Ajax的方式訪問本地站點下的txt文件,也可以通過後端支持,採用上傳文件的方式解決.這兩種方案都可以避開ActiveX和IE版本的問題.
Ⅳ 使用js能否對客戶端文件進行操作
問題一:js為了安全,是嚴格限制js直接訪問本地文件,所以不能實現創建或專者讀取本地文件屬,當然可能在IE可以通過ActiveObject對象直接操作,但其他瀏覽器不支持,所以會有兼容性問題。
問題二:讀取的話,你可以先將本地文件上傳到服務端,由伺服器端完成讀取工作後返回給前端。至於創建的話,這是沒有辦法了。
Ⅵ 如何從js文件上傳問題,怎麼解決
1
第一步:新建HTML文件
使用dreamweaver CS6新建一個html文件並保存到桌面,在桌面放一個文件(圖片或文本文檔),上傳測試用。如圖:
Ⅶ 前台js 後台java 怎麼上傳文件
可以用Uploadify這個插件進行上傳
參考網址:
http://www.uploadify.com/
http://www.blogjava.net/yangxiang/archive/2009/07/29/288888.html
前台綁定:
$(document).ready(function() {
$("#uploadify").uploadify({
'uploader' : 'uploadify.swf',
'script' : 'servlet/Upload',
'cancelImg' : 'images/cancel.png',
'folder' : 'uploads',
'queueID' : 'fileQueue',
'auto' : false,
'multi' : true,
'simUploadLimit' : 2,
'buttonText' : 'BROWSE'
});
});
後台:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String savePath = this.getServletConfig().getServletContext()
.getRealPath("");
savePath = savePath + "/uploads/";
File f1 = new File(savePath);
System.out.println(savePath);
if (!f1.exists()) {
f1.mkdirs();
}
DiskFileItemFactory fac = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(fac);
upload.setHeaderEncoding("utf-8");
List fileList = null;
try {
fileList = upload.parseRequest(request);
} catch (FileUploadException ex) {
return;
}
Iterator<FileItem> it = fileList.iterator();
String name = "";
String extName = "";
while (it.hasNext()) {
FileItem item = it.next();
if (!item.isFormField()) {
name = item.getName();
long size = item.getSize();
String type = item.getContentType();
System.out.println(size + " " + type);
if (name == null || name.trim().equals("")) {
continue;
}
//擴展名格式:
if (name.lastIndexOf(".") >= 0) {
extName = name.substring(name.lastIndexOf("."));
}
File file = null;
do {
//生成文件名:
name = UUID.randomUUID().toString();
file = new File(savePath + name + extName);
} while (file.exists());
File saveFile = new File(savePath + name + extName);
try {
item.write(saveFile);
} catch (Exception e) {
e.printStackTrace();
}
}
}
response.getWriter().print(name + extName);
}
Ⅷ js 如何獲取上傳文件的大小
HTML中input標簽有個類型是file。這個是可以上傳文件使用的。你可以直版接操作這個標簽的size來獲取文件的大小。
可通過下面的權方式
html代碼:
js代碼:
varfileId="uploadtest";
vardom=document.getElementById(fileId);
varfileSize=dom.files[0].size;//文件的大小,單位為位元組B