работа с выбором файла
Доброго времени суток.Помогите разобраться. Знаю что делаю не совсем корректно а точнее совсем не корректно,но другого способа не знаю.
почему когда выбирается файл пишется полное его имя с путём. а переменной присваивается только часть -без пути. хотя по идее должно присваиваться всё то что в теге выбора. замена value на src не помогает. также не помогает и прописывание пути к серверу в теге формы <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <style type="text/css"> <!-- --> </style> </head> <body> <form id="form1" name="form1" > <input type="file" name="ld" id="ld" /> <input type="submit" name="kn" id="kn" value="Submit" onClick="fz();"/> </form> <script> function fz() { var z=document.form1.ld.value; alert(z); } </script> </body> </html> |
Все логично и по другому никак:
<input type="file" name="input" /> <script type="text/javascript"> window.onload = function(){ document.getElementsByName('input')[0].onchange = function(){ alert(this.value); }; }; </script> |
или как вариант возможно ли размещение открываемого граф файла в iframe для дальнейшей работы с ним или в графический массив?без отправки на сервер поскольку для этих целей используется XMLHttpRequest
|
Максимум что можно получить с помощью JS:
<form action="" method="post" enctype="multipart/form-data"> <input type="file" name="input" /> </form> <script type="text/javascript"> window.onload = function(){ document.getElementsByName('input')[0].onchange = function(){ var file = this.files[0]; alert('fileSize: '+file.fileSize+'\n\nfileName: '+file.fileName+'\n\nContent: \n'+file.getAsBinary()); }; }; </script> |
Цитата:
|
Цитата:
Некоторые верси Firefox (до 3) могут показать полный путь, в остальном исключение в виде названия файла: <form action="" method="post" enctype="multipart/form-data"> <input type="file" name="input"/> </form> <script type="text/javascript"> window.onload = function(){ document.getElementsByName('input')[0].onchange = function(){ try { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); } catch(e) { alert(this.files[0].mozFullPath); return; } finally { alert(this.value); } }; }; </script> |
Часовой пояс GMT +3, время: 13:35. |