powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Глюки IE
6 сообщений из 6, страница 1 из 1
Глюки IE
    #35226044
last_elf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как сделать, чтобы работало не только в мозилле, но и в эксплорере?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
<html>
<head>
</head>
<body>
<table id="table_1" border= 0  cellpadding="0" cellspacing="5">
<tr>
	<th>Номер</th>
	<th>Ответ</th>
</tr>
</table>	
<input type="button" value="Add" onclick="add_answer();">
<script>
var ans_num= 5 ;
function add_answer() {
	t1=document.getElementById('table_1');
	
	for (var i= 1 ; i<ans_num+ 1 ; i++) {
		row=document.createElement("TR");	
		var cell_l=document.createElement("TD");
		cell_l.innerHTML=i;
		row.appendChild(cell_l);

		var cell_2=document.createElement("TD");
		cell_2.innerHTML='<input type="text" name="ans_text['+i+']" size="30">';
		row.appendChild(cell_2);
		
		t1.appendChild(row);
	}
}
</script>

</body>
</html>
...
Рейтинг: 0 / 0
Глюки IE
    #35226062
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это не глюки, а специфика работы.
Так получается, что при использовании DOM напрямую в таблицу (<table>) вставлять нельзя.
Настойчиво советую использовать следующую конструкцию:
Код: plaintext
1.
2.
3.
4.
5.
<table border= 0  cellpadding="0" cellspacing="5">
	<thead>
		<tr><th>Номер</th><th>Ответ</th></tr>
	</thead>
	<tbody id="table_1"></tbody>
<table>
... и адресовать все не к <table>, а к <tbody>.
Вот так должно работать и в IE, и в FF.
...
Рейтинг: 0 / 0
Глюки IE
    #35226070
last_elf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо большое! А все думал - что это за tbody, теперь буду знать. Интересно, можно ли еще как-то обойти ситуацию с невозможностью записи элементов в таблицу в IE-шной реализации DOMа.
...
Рейтинг: 0 / 0
Глюки IE
    #35226072
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну id можно и у таблицы оставить, а к tbody обращаться через tBodies

2 last_elf
иногда для таблиц удобнее использовать insertRow и insertCell, вместо appendChild:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
function add_answer() {
	var t1=document.getElementById('table_1');
	for (var i= 1 ; i<=ans_num; i++) {
		var row=t1.insertRow(- 1 );
		row.insertCell(- 1 ).innerHTML=i;
		row.insertCell(- 1 ).innerHTML='<input type="text" name="ans_text['+i+']" size="30">';
	}
}
...
Рейтинг: 0 / 0
Глюки IE
    #35226078
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
last_elfСпасибо большое! А все думал - что это за tbody, теперь буду знать. Интересно, можно ли еще как-то обойти ситуацию с невозможностью записи элементов в таблицу в IE-шной реализации DOMа.

реализация dom-структуры таблиц в ie такая же, как и ff, и в опере. Везде tbody добавляется автоматически, даже если вы его не прописываете (можете проверить - вывести innerHTML таблицы без tbody с помощью alert). Другое дело, что ff понимает, что на самом деле нужно делать, а ie предпочитает не гадать.
...
Рейтинг: 0 / 0
Глюки IE
    #35226104
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Однозначно соглашусь: мои знания прктически во всем базируются только на опыте, соответственно, теоретическая база сильно хромает. Но сказанное про таблицы очень логично :)
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Глюки IE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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