Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 23.08.2011, 16:50
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

А почему не устраивает вариант с удалением и вставкой нового? Некоторые браузеры умеют очищать поле присванием value пустой строки. Зачем четыре функции, а если будет на странице десять форм, то функций станет десять?
Ваша идея может быть реализована, например, так
function ClearFile ( idForm ) {
	var form = document.getElementById(idForm), 
		formElem, 
		values = [], 
		i = 0;
	for ( ; (formElem = form.elements[i++]); ) {
		if ( /^(?:radio|checkbox)$/.test( formElem.type ) ) {
			values[i] = formElem.checked;
		} else if ( formElem.nodeName.toLowerCase() == "select" ) {
			values[i] = formElem.selectedIndex;
		} else if ( formElem.nodeName.toLowerCase() != "fieldset" && formElem.type != "file" ) {
			values[i] = formElem.value;
		} 
	}
	form.reset();
	for ( i= 0; (formElem = form.elements[i++]); ) {
		if ( /^(?:radio|checkbox)$/.test( formElem.type ) ) {
			formElem.checked = values[i];
		} else if ( formElem.nodeName.toLowerCase() == "select" ) {
			formElem.selectedIndex = values[i];
		} else if ( formElem.nodeName.toLowerCase() != "fieldset" && formElem.type != "file" ) {
			formElem.value = values[i];
		}
	}
	from = formElem = null;
}
Ответить с цитированием
  #12 (permalink)  
Старый 26.08.2011, 13:00
Профессор
Отправить личное сообщение для popov654 Посмотреть профиль Найти все сообщения от popov654
 
Регистрация: 22.09.2010
Сообщений: 217

Странно, разве напрямую нельзя манипулировать с value такого поля?

document.getElementById('f1').value = ''

Я вроде делал что-то похожее...
Ответить с цитированием
  #13 (permalink)  
Старый 26.08.2011, 13:11
Профессор
Отправить личное сообщение для ваый Посмотреть профиль Найти все сообщения от ваый
 
Регистрация: 29.06.2011
Сообщений: 445

Сообщение от popov654
Странно, разве напрямую нельзя манипулировать с value такого поля?

document.getElementById('f1').value = ''

Я вроде делал что-то похожее...
В случае с полем file нельзя. Это было бы небезопасно, если бы можно было программно менять значение этого поля.
Ответить с цитированием
  #14 (permalink)  
Старый 26.08.2011, 13:13
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

popov654,
можно, но не во всех браузерах, в IE6 точно нельзя
Ответить с цитированием
  #15 (permalink)  
Старый 27.08.2011, 01:51
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от nikita.mmf
можно, но не во всех браузерах, в IE6 точно нельзя
а в каких можно?
Ответить с цитированием
  #16 (permalink)  
Старый 27.08.2011, 10:02
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

попробуй удалить элемент и заново его создать

очистится все.. и значение, и обработчики событий.
Ответить с цитированием
  #17 (permalink)  
Старый 27.08.2011, 14:46
Профессор
Отправить личное сообщение для popov654 Посмотреть профиль Найти все сообщения от popov654
 
Регистрация: 22.09.2010
Сообщений: 217

Ах ты ж ё моё
Так вот почему после перезагрузки фрейма с трекером в моём парсере я не мог программно изменить значение такого поля!
Что ж Вы мне тогда не подсказали про эту особенность, столько времени убил зря))
Ответить с цитированием
  #18 (permalink)  
Старый 27.08.2011, 14:50
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от popov654
Что ж Вы мне тогда не подсказали про эту особенность, столько времени убил зря))
Ну видимо плохо спросил)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно очистить maxlength в input? Маэстро Events/DOM/Window 10 22.06.2011 18:14
Какими средствами можно получить полный путь к файлу из input type=file swa ExtJS 6 19.05.2011 11:19
input type='file' + getElementById vah-smile Элементы интерфейса 3 30.03.2011 06:24
input type=file ctocopok Элементы интерфейса 5 13.03.2011 19:51
< input type=file > не попадают в $_FILES ce39 Элементы интерфейса 8 01.10.2009 15:33