powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / пропадает фокус
9 сообщений из 9, страница 1 из 1
пропадает фокус
    #35644663
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
подскажите пожалуйста!
есть таблица
реализована функция редактирования ячеек с помощью клавиатуры
перед редактированием я создаю новый элемент <input> и вставляю его в ячейку
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
this.oldValue = cell.innerHTML;
	var inp = document.createElement('input');
	inp.id = 'myNew';
	inp.tabindex =  2 ;
 	inp.value = this.oldValue;
	inp.onblur = function() { endEdit(); }
	inp.onkeydown = function(event) { myControlKeyDownHandler(event); }
	cell.onmousedown = '';
 	cell.innerHTML='';
 	cell.appendChild(inp);
редактирую,
по нажатию клавиши Enter или ESC выхожу из режима редактирования,
запоминаю или восстанавливаю значение и удаляю новый элемент <input>
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
function endEdit(param)
{
	var cell = this.cellSelected;
	var cb = self.document.getElementById('myNew');
	if (param && param == 'ESC') {
		var str = this.oldValue;
	}
	else {
		
		var str = cb.value;
	}
	//alert(cell.nodeName)
	cell.removeChild(cb);
	cell.innerHTML = str;
	cell.onmousedown = function() { cellSelect(this); }
	
	this.flagEdit = null;
	if (!param) this.startFlayMode();
	if (param && param == 'ENTER') {
		this.moveToCell('right');
	}
}
после этого делаю активной следующую ячейку в строке, что бы пользователь мог опять нажав клавишу Enter войти в режим редактирования
НО нажатие на клавишу Enter не дает требуемого результата, потому что фокус уже на <body>

если в конце функции endEdit добавить
Код: plaintext
1.
2.
var a = self.document.getElementById('table_62');
a.focus();
то это работает только в FF, а нужно чтобы работало и в IE

вопрос: как мне это сделать?
спасибо
...
Рейтинг: 0 / 0
пропадает фокус
    #35644814
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю, просто не надо self:
Код: plaintext
document.getElementById('table_62').focus();
Так работает и в ИЕ.
...
Рейтинг: 0 / 0
пропадает фокус
    #35644818
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю, просто не надо self:
Код: plaintext
document.getElementById('table_62').focus();
Так работает и в ИЕ.
...
Рейтинг: 0 / 0
пропадает фокус
    #35644875
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не а не работает почемуто
???
...
Рейтинг: 0 / 0
пропадает фокус
    #35644912
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Базируясь на информации из MSDN и поправки "this method is defined in World Wide Web Consortium (W3C) Document Object Model (DOM) Level 1":
- elements that expose the focus method must have the TABINDEX attribute set
- elements cannot receive focus until the document finishes loading

Таким образом допускаю, что элементу table_62 не установлен TabIndex или загрузка всего элемента не закончена.
...
Рейтинг: 0 / 0
пропадает фокус
    #35644913
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
... или загрузка всего документа ...
...
Рейтинг: 0 / 0
пропадает фокус
    #35645101
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tabindex установлен и равен 1
...
Рейтинг: 0 / 0
пропадает фокус
    #35645114
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007,

Не надо фокус юзать, опыт показывает, что в разных браузерах - совершенно разные штучки бывают с фокусом. Вообще-то онблюр и онфокус - вполне понятно, но они возникают в разных браузерах по разному. Примеры лень приводить. Я свой календарик всё вспоминаю (хе-хе).
...
Рейтинг: 0 / 0
пропадает фокус
    #35645801
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
так как же быть?
вот файл
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / пропадает фокус
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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