Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Javascript: Узнать, выбран ли файл / 25 сообщений из 25, страница 1 из 1
06.11.2008, 14:41
    #35637723
jscr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
С помощью тега <input type="file"> мы можем выбрать файл. Мне нужно добавлять поле для выбора нового файла, если файл был выбран на предыдущем поле (т.е. нажата кнока "Открыть", не "Отменить"). Как узнать Это?
...
Рейтинг: 0 / 0
06.11.2008, 14:47
    #35637737
Evgeniy_SH
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
<input id="firstfile" type="file" onchange="alert('change'); document.getElementById('secondfile').disabled=false;">
<input id="secondfile" type="file" disabled>

можно по разному сделать ;) но это не вариант, лучше просто сделать сразу несколько полей для файлов и всё ;) что б без заморочек, а то можно ещё штук 100 придумать когда это не нужно...
...
Рейтинг: 0 / 0
07.11.2008, 00:25
    #35638891
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Evgeniy_SHно это не вариант, лучше просто сделать сразу несколько полей для файлов и всё ;)
[риторический вопрос] интересно, а как бы тебе понравилось, если бы на gmal, mail.ru и т.п. было бы можно приложить всего три файла, а тебе хотелось бы десять?
...
Рейтинг: 0 / 0
07.11.2008, 11:50
    #35639591
Evgeniy_SH
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
спасибо, я не пользуюсь такими сервисами ;)
...
Рейтинг: 0 / 0
07.11.2008, 22:02
    #35641203
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
ИМХО в общем случае задача неразрешима.
Проблема в том, что в поле ввода <input type="file"> можно вписать имя файла ручками с клавиатуры, а можно и гуевым браузером ФС. С последним более-менее понятно - в результате останется в поле какое либо значение, или поле будет пустым. В первом же случае (на основании аксиомы "нельзя доверять пользователю") нет возможности проверить, что именно было помещено в поле - имя файла или абракадабра - есть строка символов, и усё. А представляет ли строка смимволов имя файла - это не проверить до сабмита (или даже до получения файла на сервере - поправьте, если ошибаюсь). ИЕ + ActiveX не в счет.
Таким образом, как частный случай, можно рассмотреть только наличие или отсутствие текста (или строки сиволов) в поле ввода. А уж такой вопрос как "указывает или нет эта строка на какой то файл" - оставить на совести юзера.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
07.11.2008, 22:27
    #35641252
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Справедливости ради замечу, что Файрфокс 3.0.3 под Linux не позволяет явно вписать ручками абракадабру - при попытке установить курсор на поле ввода он открывает браузер ФС, а саму абракадабру можно вписать только из него. Opera и Konqueror - позволяют без проблем.
Если есть желание потестить другие браузеры на тему введенного в поле значения - вот простой код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<html>
  <head>
    <script type="text/javascript">
      function checkit(){
        alert(document.getElementById('ff1').value);
      }
    </script>
  </head>
  <body>
    <form><input type="file" id="ff1"></form>
    <div onclick="checkit();">Check field</div>
  </body>
</html>
В доступных для меня браузерах в алерте была видна только часть строки после последнего слэша (если не ошибаюсь, это не слишком давно обсуждалось на этом форуме). Да и то, туда без проблем удается вписать белиберду.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
07.11.2008, 22:41
    #35641259
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
[off]
vkle
Файрфокс 3.0.3 под Linux не позволяет явно вписать ручками абракадабру - при попытке установить курсор на поле ввода он открывает браузер ФС

под мастдаем - тоже
Не то что слов - слюней не хвататЪ Ж8-/ События имеют тенденцию развиваться от плохого к худшему...
[/off]
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
07.11.2008, 22:47
    #35641271
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Ex_Soft,

Уважаемый, Ex_Soft , не могли бы Вы писать всё-таки на русском языке. Уже смотрел словарь хакериза и идиша, чего-то нашёл всё-таки, но мысли Ваши всё равно - не совсем чего-то понятны.
...
Рейтинг: 0 / 0
07.11.2008, 23:02
    #35641289
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
ShSerge

Ex_Soft
под мастдаем (M$ Windows) - тоже
Не то что слов - слюней не хвататЪ Ж8-/ (перефразировка "Нет слов - одни слюни") События имеют тенденцию развиваться от плохого к худшему (следствие Закона Мерфи - сиречь сетование на то, что все нововведения, как правило, не на пользу потребителя (сродни старческому брюзжанию а-ля "раньше и трава зеленее была"))



_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
07.11.2008, 23:12
    #35641302
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Ex_Soft,

Ладно, проехали. Видать - тяжёлый случай... .
...
Рейтинг: 0 / 0
07.11.2008, 23:13
    #35641303
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
> Ex_Soft

Так и не понял, тот факт, что Файрфокс не позволяет ручками вписать имя файла, равно как и абракадабру - это хорошо или крайне плохо? По моему, более чем скромному мнению, принудительное открытие браузера призвано избавить от ошибок, которые основаны на человеческом факторе, таких как "набрал не тот символ" или "не попал по клавише" (не далее как сегодня трижды продиктовал по буквам имя файла, но юзер так и не смог его набрать верно - пришлось переименовать в 1.tar.gz). С другой стороны, возить мышом по поводу и без повода как то становится утомительно ((
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
08.11.2008, 09:16
    #35641521
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
ShSerge
тяжёлый случай

угу

vkle
....принудительное открытие браузера призвано избавить от ошибок, которые основаны на человеческом факторе...возить мышом по поводу и без повода как то становится утомительно...

Вот и я ж о чем... Благие их намерения - понятны. Я, конечно, понимаю, что количество ума на планете весчЪ постоянная, а население-то - растет... Но, IMHO, не стоит же так кардинально... Сделайте галку в настройках по default'у за'check'аную: глупый юзвер туда все равно не добереться, а нормальным людям - какое облегчение.
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
08.11.2008, 10:24
    #35641539
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
P.S. Исходя из + about:config , мо, можно и самому нарулить. FF ваяют люди далеко не глупые и 100%-но нычку какую-нить, по крайней мере, для себя, по этому поводу оставили (а то я просто умилюсь, представив, как они елозят мышкой по дереву ФС, выбирая файл
)
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
08.11.2008, 10:40
    #35641547
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
P.P.S. Сподiвання оказались напрасны А это вообще убило в усмерть... Сразу вспомнились юсерс мануалы на соленых орешках: "1. Открыть. 2. Есть" etc...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
08.11.2008, 10:45
    #35641552
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
jscrС помощью тега <input type="file"> мы можем выбрать файл. Мне нужно добавлять поле для выбора нового файла, если файл был выбран на предыдущем поле (т.е. нажата кнока "Открыть", не "Отменить"). Как узнать Это?
Пардон, отвлёкся на некоторые лингвистические штучки. Проверять валюе (на онченж) можно. Вернее, просто на онченж добавлять и не заморачиваться. А потом добавить чегото-то_там.appendChild,типа:
Код: plaintext
1.
2.
3.
var in=document.createElement("INPUT");
in.setAttribute("type","file", 0 );
чегото-то_там.appendChild(in);
Ex_Soft...Я, конечно, понимаю, что количество ума на планете весчЪ постоянная...

Интересная мысль, но очень спорная, потому что количество дури - тоже "весчЪ постоянная".
...
Рейтинг: 0 / 0
09.11.2008, 01:26
    #35642140
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
[off]
ShSerge
Интересная мысль, но очень спорная

Это Аксиома Коула
А по поводу дури... Я че про орешки-то вспомнил: IMHO этот "баг" - перестраховка от того, что какая-нить бабушка подаст в суд за то, что отправляя иск компании, производящей стиральные машинки, она не смогла, набрав руками абракадабру, при\'attach\'ить фото с останками ее любимого котика после того, как она его постирала в стиральной машинке потому, что в юзерс мануале не было написано "Не стирайте котов" (м.б. там и было написано "домашние животные", но она ж не знает, что кот - тоже домашнее животное). Сами плодим , а потом сами же страдаем и перестраховываемся. Да зачем далеко ходить? Сдесь еще ничего. А Вы посмотрите, какие, все чаще и чаще, вопросы задаются сдесь , http://www.sql.ru/forum/actualtopics.aspx?bid=12]сдесь[/url
],
сдесь . Дети RAD\'остей и визардов, которых малейшее телодвижение вправо/влево вводит в ступор (BTW, не одному мне эта мысль пришла в голову ). Люди, не знающие, что такое debugger и breakpoint. Иначе их вопрос даже не возник, владей они этим. А их "решения": мы проблему не решим, а сделаем вид, что ее не заметили. И таких все больше и больше. Так что, позволю себе не согласиться с Вашим предположением о константности дури. Если, конечно, Вы имеете в виду дурь в гольове, а не несколько иного рода


P.S. А русский мы ж уже проходили
Смею надеяться, что я не слишком злоупотребляю...
[/off]
_________________
"Helo, word!" - 17 errors 56 warnings

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
09.11.2008, 08:56
    #35642197
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Кто бы мог подумать! Вопрос-то оказался - непростой. В ФФ, дейссвительно можно ручками всякую фигню написать, но он позволяет всё-таки проверить выбран файл или нет. Даже узнать на клиенте его длину. В опере на любой кейпресс или пасте в имени файла сразу же - онченж. В хроме - на мышеклик по имени файла открывается диалог.
...
Рейтинг: 0 / 0
09.11.2008, 10:18
    #35642218
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Ex_Soft... сдесь , сдесь ...
Пускай. Когда мне вдруг захочется миллионщиком стать - начну им их "контролы" писать. Брать буду не много - по доллару на мышедвижение... .
...
Рейтинг: 0 / 0
09.11.2008, 17:59
    #35642481
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
On Sun, 09 Nov 08 05:56:14 GMT
ShSerge wrote:

> В ФФ, дейссвительно можно ручками всякую фигню написать, но он
> позволяет всё-таки проверить выбран файл или нет. Даже узнать на
> клиенте его длину.

Если не трудно, опиши подробнее, как это сделать? И про фигню и про размер файла.

PS:
> по доллару на мышедвижение
вот хде целина непаханая )))))))
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
09.11.2008, 22:04
    #35642729
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
vkle
Если не трудно, опиши подробнее, как это сделать? И про фигню и про размер файла.

Зря ты это... . Часа два уже убил. Не угадать свойства. Может фирефокс у меня дома какой-то не такой. На работе получалось даже содержимое файла в двоичном виде на клиенте получить. Щас юзал:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<html>
<script>
function chg(el){
var s="";
for (var i in el) s+=i+"<br />";
document.body.innerHTML+=s;
}
</script>
<body>
<input type="file" id="fff" />
<br />
<button onclick="chg(document.getElementById('fff'))">Click</button>
</body>
</html>
Соответствующих свойств НЕ НАШЁЛ! Но найду!
...
Рейтинг: 0 / 0
09.11.2008, 22:17
    #35642740
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Ex_Soft... сдесь , сдесь ...
И сдесь , например.
...
Рейтинг: 0 / 0
10.11.2008, 00:37
    #35642867
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Ух, я примочечку нашел - загляденье! Можно списком файлы выбирать, можно по одному в список. Потом кнопочка "отправить" - и файлы уходят сами. Еще и процент ушедшего показывает. Не js, но на странице ...

Сейчас не до этого, но скоро в проекте надо будет отобразить. Как реализую (обрежу все ненужное и оставлю только нужное), так смогу и поделиться ... Но впечатление очень положительное.

Хочу только сделать слегка измененным: через инпут файл по одному добавлять в список (а параллельно в приблуду вставлять), а затем по кнопке из приблуды отправлять, но странице отдавать процент для показа.
...
Рейтинг: 0 / 0
10.11.2008, 10:08
    #35643155
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
vkle,

Нашёл!
Пусть инпут будет с id="f", тогда у document.getElementById('f').files[0] есть свойства:
fileName
fileSize
getAsText
getAsDataURL
getAsBinary
...
Рейтинг: 0 / 0
10.11.2008, 11:43
    #35643460
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
P.S. Так сказать, official documentation:
https://developer.mozilla.org/en/nsIDOMFile

https://developer.mozilla.org/en/nsIDOMFileList

http://www.w3.org/TR/file-upload/

P.P.S. А Mozilla FireFox -> Tools -> DOM Inspector 2.0.1 не показал сего...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
11.11.2008, 14:07
    #35646675
mrJust
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript: Узнать, выбран ли файл
Крутая штука, жаль что только под ff (:
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Javascript: Узнать, выбран ли файл / 25 сообщений из 25, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]