powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Снова innerHTML
25 сообщений из 54, страница 1 из 3
Снова innerHTML
    #35058705
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток.
То ли туплю с недосыпу, то ли просто не в курсе чего-нибудь:

при записи в innerHTML элемента TD, в котором до этого находится таблица, другой таблицы - всё содержимое TD пропадает! Сам записываемый HTML проверил, он корректный.
В чем грабли?
Код: plaintext
1.
var ParentObject = document.getElementById("DataRepeaterBlock");
            ParentObject.innerHTML = data;
...
Рейтинг: 0 / 0
Снова innerHTML
    #35059791
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugeniusвсё содержимое TD пропадает!
Это и не удивительно. Ведь ты его заменяеш на другое содержимое.
Сделай например так
Код: plaintext
ParentObject.innerHTML = ParentObject.innerHTML + data
...
Рейтинг: 0 / 0
Снова innerHTML
    #35061175
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так мне и нужно заменить его. Но то, что я туда помещаю - не отображается, хотя отображается, если поместить в отдельный файл и открыть в браузере
...
Рейтинг: 0 / 0
Снова innerHTML
    #35061197
GWhite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Посмотрите исходный код страницы после замены....наверняка где-то тэг забыли :)
Или давайте код в студию, а так сложно что-либо посоветовать....
...
Рейтинг: 0 / 0
Снова innerHTML
    #35061353
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так вроде не забыл я тэгов (скорее уж что-то тут лишнее, не могу понять)
Вот это пытаюсь записать в innerHTML:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
<TABLE id='ObjectsDataTable' cellspacing='0' cellpadding='0' frame='void' rules='none' style='table-layout:fixed;font-family:Tahoma; font-size:8pt;width:100%;border-collapse:collapse;'>
<tr class='TableHeader'>
<td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:80px;'><a title="Сортировать по колонке" href="javascript:PostBackForm(document.forms[0],'SORTING_ORDER','ID')">№</a></td>
<td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:68%;'><a title="Сортировать по колонке" href="javascript:PostBackForm(document.forms[0],'SORTING_ORDER','Description')">Наименование</a></td>
<td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:32%;'><a title="Сортировать по колонке" href="javascript:PostBackForm(document.forms[0],'SORTING_ORDER','StateDescription')">Состояние</a></td>

</tr>
<tr id='_2775' valign='top' class='TableRow' onclick='javascript:setRowStyle(this,true,true,false);setCurrentItemId(2775)'
onmouseover='javascript:setRowStyle(this,false,true,false)' onmouseout='javascript:setRowStyle(this,false,false,false)'>
<td class='TableColumn' style='text-align:center;padding-left:4px;white-space:nowrap;'>X- 00002775 </td>
<td class='TableColumn' style='padding-left:4px;'>Стул Престиж  16                                    </td>
<td class='TableColumn' style='padding-left:4px;'>В эксплуатации</td>

</tr>
<tr class='TableHeader'>
<td colspan='3' class='ColumnCaption' style='text-align:left'>Найдено записей:  1 </td>

</tr>
</TABLE>

А код на JS - он весь есть выше.
...
Рейтинг: 0 / 0
Снова innerHTML
    #35061443
GWhite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну и в результате-то код вставляется? Просмотр исходного кода результата в порядке или нет?
...
Рейтинг: 0 / 0
Снова innerHTML
    #35061450
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Действительно. Eugenius , после "замены" попробуй прочитать значение еще раз и выведи алертом. Что там будет?
----------
Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT
...
Рейтинг: 0 / 0
Снова innerHTML
    #35061583
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде так работает.

Код: 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.
33.
34.
35.
36.
37.
38.
39.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="en-us">
<title>Title block</title>
<script type="text/javascript">
<!--
function innerTd() {
	document.getElementById('td0').innerHTML = document.getElementById('div').innerHTML;
}
//-->
</script>
</head>
<body>
<table border="1" width="100%" id="table1">
    <tr>
        <td id="td0"> </td>
    </tr>
</table>
<div id="div">
<TABLE id='table2' cellspacing='0' cellpadding='0' frame='void' rules='none' style='table-layout:fixed;font-family:Tahoma; font-size:8pt;width:100%;border-collapse:collapse;'>
<tr class='TableHeader'>
<td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:80px;'><a title="Сортировать по колонке" href="javascript:PostBackForm(document.forms[0],'SORTING_ORDER','ID')">№</a></td>
<td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:68%;'><a title="Сортировать по колонке" href="javascript:PostBackForm(document.forms[0],'SORTING_ORDER','Description')">Наименование</a></td>
<td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:32%;'><a title="Сортировать по колонке" href="javascript:PostBackForm(document.forms[0],'SORTING_ORDER','StateDescription')">Состояние</a></td>
</tr>
<tr id='_2775' valign='top' class='TableRow' onclick='javascript:setRowStyle(this,true,true,false);setCurrentItemId(2775)'>
<td class='TableColumn' style='text-align:center;padding-left:4px;white-space:nowrap;'>X- 00002775 </td>
<td class='TableColumn' style='padding-left:4px;'>Стул Престиж  16                                    </td>
<td class='TableColumn' style='padding-left:4px;'>В эксплуатации</td>
</tr>
<tr class='TableHeader'>
<td colspan='3' class='ColumnCaption' style='text-align:left'>Найдено записей:  1 </td>
</tr>
</TABLE>
</div>
<p><input type="button" value="tdInnerHtml" onclick="innerTd()"></p>
</body>
</html>
...
Рейтинг: 0 / 0
Снова innerHTML
    #35061703
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вывел алертом - дейсвтельно, пусто
...
Рейтинг: 0 / 0
Снова innerHTML
    #35061768
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GhirikВроде так работает.

Код: plaintext
1.
2.
3.
4.
5.
<script type="text/javascript">
<!--
function innerTd() {
	document.getElementById('td0').innerHTML = document.getElementById('div').innerHTML;
}

Хотелось бы еще понять, что это всё значит:-) Не записывать же сначала весь этот html сначала в div, и уже оттуда в ячейку верхней таблицы
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062204
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторХотелось бы еще понять, что это всё значит:-) Не записывать же сначала весь этот html сначала в div, и уже оттуда в ячейку верхней таблицы

Ну, как бы, контейнер по любому нужен. Метод innerHTML применяется к контейнерам. Есть, наверное, ещё вариант, только вот желание, вряд ли есть.... Можно ещё правильно записать ваш html-код, который data. Типа, закрыть обратными слэшами всякие левые символы. Но ИМХО, это с родни маразму...
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062292
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поместил таблицу в <div>, бесполезно.
Заметил еще кое-что:
если убрать атрибут style у записываемой таблицы - она начинает отображаться.
Что за ерунда, люди?
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062300
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всю страницу то нельзя выложить? От <html> до </html>
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062312
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот так, через ж..., то же работает...

Код: 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.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="en-us">
<title>Title block</title>
<script type="text/javascript">
<!--

var htmlTab = "<TABLE id='table2' cellspacing='0' cellpadding='0' frame='void' rules='none' style='table-layout:fixed;font-family:Tahoma; font-size:8pt;width:100%;border-collapse:collapse;'><tr class='TableHeader'><td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:80px;'><a title=\"Сортировать по колонке\" href=\"javascript:PostBackForm(document.forms[ 0 ],'SORTING_ORDER','ID')\">№</a></td><td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:68%;'><a title=\"Сортировать по колонке\" href=\"javascript:PostBackForm(document.forms[ 0 ],'SORTING_ORDER','Description')\">Наименование</a></td><td class='ColumnCaption' style='text-align:center;white-space:nowrap;width:32%;'><a title=\"Сортировать по колонке\" href=\"javascript:PostBackForm(document.forms[ 0 ],'SORTING_ORDER','StateDescription')\">Состояние</a></td></tr><tr id='_2775' valign='top' class='TableRow' onclick='javascript:setRowStyle(this,true,true,false);setCurrentItemId(2775)'><td class='TableColumn' style='text-align:center;padding-left:4px;white-space:nowrap;'>X-00002775</td><td class='TableColumn' style='padding-left:4px;'>Стул Престиж 16 </td><td class='TableColumn' style='padding-left:4px;'>В эксплуатации</td></tr><tr class='TableHeader'><td colspan='3' class='ColumnCaption' style='text-align:left'>Найдено записей: 1</td></tr></TABLE>";

function innerTd() {
	document.getElementById('td0').innerHTML = htmlTab;
}
//-->
</script>
</head>
<body>
<table border="1" width="100%" id="table1">
    <tr>
        <td id="td0"> </td>
    </tr>
</table>
<div id="div">
</div>
<p><input type="button" value="tdInnerHtml" onclick="innerTd()"></p>
</body>
</html>
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062345
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GhirikВсю страницу то нельзя выложить? От <html> до </html>
Страница - здоровенная . И при динамическом обновлении innerHTML ты всё равно увидишь только изначальный вариант, так ведь?
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062364
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПоместил таблицу в <div>, бесполезно.

Ну как бесполезно?! Я же вам только что привел работающий код. Смотрите, что у вас не так..
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062375
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GhirikВот так, через ж..., то же работает...

Код: plaintext
1.
2.
3.
<script type="text/javascript">
<!--

var htmlTab = "<TABLE id='table2' 

В том-то и дело, что у меня не работает почти такая же конструкция:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
function getCallBackResult(response, context) {
    var RESPONSE = response.split(":");
    switch (RESPONSE[ 0 ]) {
        case "{message}":
            alert(RESPONSE[ 1 ]);
            return;
        case "NEW_OBJECTS_CHECK":
            var parameters = (RESPONSE[ 1 ] == "TRUE") ? "choose" : "skip";
            menuCommand("new", parameters);
            return;
        case "CHECK_FOR_UPDATES":
            if (RESPONSE[ 1 ].toUpperCase() != "FALSE") {
                var ParentObj = document.getElementById("MainDataRepeater");
                ParentObj.innerHTML = RESPONSE[ 1 ];
                window.alert(ParentObj.innerHTML);
            }
            return;
        default:
            return;
    }   
}
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062382
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я всем всегда рекомендую ныкладывать подготовленную проблему. Т.е. Вы берете и начинаете удалять по очереди все лишние элементы с вашей здоровенной страницы, но так, чтобы проблема сохранилась. При таком методе, обычно до поста не доходит. Обычно человек сам находит косяк.
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062394
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну блин, нельзя так играться с заглавными буквами в JavaScript.
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062405
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы каким браузером смотрите?
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062416
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GhirikНу блин, нельзя так играться с заглавными буквами в JavaScript.
Что ж тут такого-то?

авторЯ всем всегда рекомендую ныкладывать подготовленную проблему. Т.е. Вы берете и начинаете удалять по очереди все лишние элементы с вашей здоровенной страницы, но так, чтобы проблема сохранилась. При таком методе, обычно до поста не доходит. Обычно человек сам находит косяк.
Именно это я проделываю с тех пор, как натолкнулся на проблему:-)
Просто, с перерывами. Поэтому пока нашел только проблему атрибута style
ИМХО, при таком подходе есть шанс фиг-знает-сколько-времени искать давно кем-то найденное решение:-)
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062422
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GhirikВы каким браузером смотрите?
Вот это косяк с моей стороны, что не сказал: только IE, всё делается под него исключительно
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062440
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как раз у IE бывают глюки, связанные с регистром символов. Обзовите ваш RESPONSE например RESPONSE_1.
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062448
Ghirik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У IE бывают конфликты глобальных и локальных переменных, если они имеют одинаковые названия.
...
Рейтинг: 0 / 0
Снова innerHTML
    #35062512
Eugenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ок, переменную переназвал (хотя такой же глобальной у меня нет).
Но это не непосредственная причина беды.
Помогите, пожалуйста, кто-нибудь, разобрать тот HTML, который я в первый раз опубликовал!
Что в нем может мешать нормальному отображению???!!!
И почему тогда в отдельном файле с отображением этого же HTML всё в порядке?
...
Рейтинг: 0 / 0
25 сообщений из 54, страница 1 из 3
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Снова innerHTML
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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