Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обновление части таблицы 
:(
    Опции темы
Avtor
Дата 18.7.2007, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 111
Регистрация: 21.7.2006

Репутация: нет
Всего: нет



Помогите разобраться  - этот скрипт корректно работает только в Mozilla, в IE совсем не работает, в Opera не корректно работает. Подскажите как подправить его.
Код

<HTML>
  <HEAD>
    <TITLE>const(ant)</TITLE>
<script LANGUAGE="JavaScript">

Код

  var cities = ["London", "Moscow", "New York", "Tokyo", "Sydney"];
  var tempsF = [33, 12, 20, 40, 75];
  function showData() {
    var tableData = "";
    for (var i = 0; i < cities.length; i++) {
      tableData += "<TR><TD>" + cities[i] + "</TD><TD>" + tempsF[i] + "</TD></TR>";
    }
    document.getElementById("display").innerHTML = tableData;
  }

Код

</SCRIPT>
  </HEAD>
  <BODY onLoad="javascript:showData();">
    <H1>The const keyword</H1>
    <TABLE ID="temps" border="1">
      <TR>
        <TD>City</TD>
        <TD>Temperature</TD>
      </TR>
      <TBODY ID="display">
      </TBODY>
    </TABLE>
  </BODY>
</HTML>

PM MAIL   Вверх
coyl
Дата 18.7.2007, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 13.6.2006

Репутация: нет
Всего: 1



как раз сейчас столкнулся с той же проблемой. порыл яндекс и нашел, что в innerHTML для <table> можно писать не все. нао через DOM работать. Однако, в моём случае это очень геморно, шаблонизатор генерит хтмл, а я его вставляю, так что ищу обходные пути =)

В частности, если можно как-нибудь преобразовать html в объект элемента, то можно потом приаппендить его к таблице без проблем. 
То есть если у меня есть строка "<tr><td>tralivali</td></tr>" и её можно преобразовать в объект, то все шоколадно. ишу пути =)
PM MAIL   Вверх
Avtor
Дата 18.7.2007, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 111
Регистрация: 21.7.2006

Репутация: нет
Всего: нет



Да через DOM можно, но также очень неудобно в моем случае. Это я просто кинул облегченный пример. На самом деле мне этот кусок таблицы возвращается с помощью ajax-технологии из php-файла.
PM MAIL   Вверх
Loengreen
Дата 18.7.2007, 21:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 13.7.2007

Репутация: нет
Всего: нет



to Avtor:
Вам сюда

PM MAIL   Вверх
Avtor
Дата 18.7.2007, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 111
Регистрация: 21.7.2006

Репутация: нет
Всего: нет



Спасибо. Тока создавать таблицу с пом-ю DOM я уже давно научился. 
PM MAIL   Вверх
coyl
Дата 18.7.2007, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 13.6.2006

Репутация: нет
Всего: 1



да. невнимательный староста =)

У меня на самом деле тоже этот кусок аяксом приходит =) причем он берется из обычного шаблона страницы. поэтому очень не хочеться домовых вызывать =)

Это сообщение отредактировал(а) coyl - 18.7.2007, 22:21
PM MAIL   Вверх
Burrr
Дата 19.7.2007, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 4.9.2005

Репутация: 10
Всего: 20



Avtor, тебе обязательно заполнять именно содержимое тега <table>? А что если всю таблицу положить в ДИВ и переписывать его содержимое, тогда можно обойтись и без DOM (иначе - никак, ИМХО). Пример (не проверял, но суть ухватить можно):
Код
<HTML>
  <HEAD>
    <TITLE>const(ant)</TITLE>
<script type="text/javascript">
var cities = ["London", "Moscow", "New York", "Tokyo", "Sydney"];
  var tempsF = [33, 12, 20, 40, 75];
  function showData() {
    var tableData = "<TABLE ID=\"temps\" border=\"1\">\
      <TR>\
        <TD>City</TD>\
        <TD>Temperature</TD>\
      </TR>";
    for (var i = 0; i < cities.length; i++) {
      tableData += "<TR><TD>" + cities[i] + "</TD><TD>" + tempsF[i] + "</TD></TR>";
    }
    tableData += "</table>";
    document.getElementById("display").innerHTML = tableData;
  }
</SCRIPT>
  </HEAD>
  <BODY onLoad="javascript:showData();">
    <H1>The const keyword</H1>
    <DIV ID="display"></div>
  </BODY>
</HTML>



Это сообщение отредактировал(а) Burrr - 19.7.2007, 10:30


--------------------
PM MAIL ICQ   Вверх
coyl
Дата 19.7.2007, 13:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 13.6.2006

Репутация: нет
Всего: 1



ну так я делал, но это как-то кривовато (( хочется всетаки извернуться и добавлять именно tr

Это сообщение отредактировал(а) coyl - 19.7.2007, 13:22
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0529 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.