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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> отрисовывать таблицу js 
:(
    Опции темы
DarkAngel
Дата 27.1.2009, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Добрый день. Есть проблемма. имеется вот такой код.
Буквально он выводит кнопку Добавить Город.
Далее в зависимости от того что мы выбрали ввыводит 4 inputa и к ним создает 4 текстовых значения.
что нужно...нужно поместить это в таблицу

буквально что бы получилось так..
Код



<table> 
<tr><td>текстовое зачени 1 </td> <td> >input1></td></tr>
<tr><td>текстовое зачени N </td> <td> >inputN></td></tr>


что пробывал....
пробывал создавать элементы в виде таблицы....буквально так
elem = document.createElement("table");
      elem.setAttribute('border', '1');    
      frm.appendChild(elem); 

и так все остальное...понял что это затея бредовая почти сразу

пробывал через document.getElementById('table').innerHTML+="<tr><td>";
добавлять к существуюшей в хтмл таблице.....как то тоже не очень успешно.....видимо что то не так.

Кто подскажет в какую сторону шагать?

Код

<script language="javascript">
var xmlHttp = false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
try {
  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
  try {
    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (e2) {
    xmlHttp = false;
  }
}
@end @*/

if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
  xmlHttp = new XMLHttpRequest();
}

function selCity() {
    var frm = document.getElementById('mainFrm');
    var elem, txt;
    
    if (document.getElementById("ctSelect").value==-2)
    if (!document.getElementById("othCity"))
     {
      elem = document.createElement("input");
      elem.setAttribute('id', 'othCity');
      elem.setAttribute('name', 'othCity');      
      frm.insertBefore(elem, document.getElementById("ctSelect").nextSibling);
    }
    
    if (document.getElementById('i0')) return;

    for (i = 0; i<4; i++){
    
      elem = document.createElement("p");    
              frm.appendChild(elem);    
      elem.setAttribute('onchange', 'selCity();');
      txt = document.createTextNode((i+1)+" ");
    
             frm.appendChild(txt);    
             elem = document.createElement("input");
      elem.setAttribute('id', 'i'+i);
      elem.setAttribute('name', 'i'+i);    
      frm.appendChild(elem); 

    }

    elem = document.createElement("p");    
    frm.appendChild(elem);    
    elem = document.createElement("input");
    elem.setAttribute('type', 'submit');
    elem.setAttribute('value', 'Ok');    
    frm.appendChild(elem); 
    
}

function updatePage() {
  if (xmlHttp.readyState == 4) {
    var response = xmlHttp.responseText;
    var a = response.split("\n");
    var elem = document.createElement("select");
    elem.onchange = selCity;
    elem.setAttribute('id', 'ctSelect');    
    elem.setAttribute('name', 'ctSelect');    
    elem.options[0] = new Option("Âûáåðèòå ãîðîä...", "-1", false, false);
    for (var i = 0; i<a.length; i++)
     elem.options[i+1] = new Option(a[i], i, false, false);
    elem.options[i+1] = new Option("Äðóãîé ãîðîä...", "-2", false, false);     
    var frm = document.getElementById('mainFrm');
    frm.removeChild(document.getElementById('startBtn'));
    document.getElementById('mainFrm').appendChild(elem);
  }
}

function callServer() {
  var url = "./1.php";
  xmlHttp.open("GET", url, true);
  xmlHttp.onreadystatechange = updatePage;
  xmlHttp.send(null);
}

</script>
</table>
<center><form id="mainFrm" style="width:350px; border:solid 1px; padding:10px;">
<input id="startBtn" type="button" value="send" onclick="this.setAttribute('disabled', 'true'); callServer();" />
</form>

<script language="javascript">
document.getElementById("startBtn").removeAttribute('disabled');
</script>


Это сообщение отредактировал(а) DarkAngel - 28.1.2009, 14:03
PM MAIL   Вверх
krundetz
Дата 27.1.2009, 22:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

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



попробуй вот так
Код

frm.appendChild('<tr><td>текстовое зачени 1 </td> <td> <input /></td></tr>');



--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
DarkAngel
Дата 27.1.2009, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



проблема в том что

Код

  for (i = 0; i<4; i++){
    
      elem = document.createElement("p");    
              frm.appendChild(elem);    
      elem.setAttribute('onchange', 'selCity();');
      txt = document.createTextNode((i+1)+" ");
    
             frm.appendChild(txt);    
             elem = document.createElement("input");
      elem.setAttribute('id', 'i'+i);
      elem.setAttribute('name', 'i'+i);    
      frm.appendChild(elem); 

    }

и вот текстовое значение 
и инпут рисуется в этом цикле, я бы с удовольствием вставил их в одну строку....но я их просто не знаю до этого.
и еще.....говорит "Несовпадение типов" на эту строку frm.appendChild('<tr><td>текстовое зачени 1 </td> <td> <input /></td></tr>');
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




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


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

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