Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.01.2016, 20:01
Новичок на форуме
Отправить личное сообщение для Osof Посмотреть профиль Найти все сообщения от Osof
 
Регистрация: 30.01.2016
Сообщений: 5

Вставка нескольких строк в таблицу в tr
Дорый день.
Есть задача. Дана таблица, в который при нажатии на некоторую строку должно подгружаться еще несколько строк (или одна).
Как это реализовано:
<table><tr><td colspan = 2>LINK</td><tr><tr id="load"></tr></table>

При нажатии на LINK срабатывает такой скрипт
$("#load").html(data)


Так вот. Если
data = "<td>1</td><td>2</td>"
тогда все нормально. А если
data = "<td>1</td><td>2</td></tr><tr><td>3</td><td>4</td>"
то вообще ничего не происходит. Запрос срабатывает, ответ получается, но в строку ничего не вставляется. Как будто комбинация "</tr><tr>" вводит браузер в ступор и он не может разорвать строку и добавить еще одну.

Может кто-то сталкивался?
Ответить с цитированием
  #2 (permalink)  
Старый 30.01.2016, 20:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,115

Osof,
так это вы не строку рвёте а уже таблицу на части
Ответить с цитированием
  #3 (permalink)  
Старый 30.01.2016, 20:10
Новичок на форуме
Отправить личное сообщение для Osof Посмотреть профиль Найти все сообщения от Osof
 
Регистрация: 30.01.2016
Сообщений: 5

Почему таблицу? </table> нигде не вставляется. Если я в исходный код добавляю руками <td>1</td><td>2</td></tr><tr><td>3</td><td>4</td>, то все ок, добавляется две строки. А вот если аяксом - ничего вообще не добавляется.
Ответить с цитированием
  #4 (permalink)  
Старый 30.01.2016, 20:18
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

Ошибка в html. Перед tr с ид должен идти закрывающий тэг /tr
Ответить с цитированием
  #5 (permalink)  
Старый 30.01.2016, 20:38
Новичок на форуме
Отправить личное сообщение для Osof Посмотреть профиль Найти все сообщения от Osof
 
Регистрация: 30.01.2016
Сообщений: 5

Сообщение от destus Посмотреть сообщение
Ошибка в html. Перед tr с ид должен идти закрывающий тэг /tr
Виноват, опечатался.
Конечно там вот так
<table><tr><td colspan = 2>LINK</td></tr><tr id="load"></tr></table>
Ответить с цитированием
  #6 (permalink)  
Старый 30.01.2016, 20:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,115

лучше бы без извратов но если хочется то можно ... тут далее типа код для любителей погорячее
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  #load{
    background-color: #00FF00;
  }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
  <script>
   $(function(){
   data = "<td>1</td><td>2</td></tr><tr><td>3</td><td>4</td>";
   //data = "<td>1</td><td>2</td>"
   $("#load").html(function() {
  data = $("<tr>"+data+"<\/tr>");
  var i = this.rowIndex, parent = this.parentNode;
  $.each(data,function(indx, tr){
      if(indx) {
         var newTr = parent.insertRow(++i);
         newTr.innerHTML = tr.innerHTML
      }
        });
  return data.html()
})
   })
  </script>
</head>

<body>
 <table><tr><td colspan = 2>LINK</td></tr><tr id="load"></tr></table>

</body>

</html>

Последний раз редактировалось рони, 30.01.2016 в 20:57.
Ответить с цитированием
  #7 (permalink)  
Старый 30.01.2016, 20:52
Новичок на форуме
Отправить личное сообщение для Osof Посмотреть профиль Найти все сообщения от Osof
 
Регистрация: 30.01.2016
Сообщений: 5

Сообщение от рони Посмотреть сообщение
лучше бы без извратов но если хочется то можно ... тут далее типа код
Не понял. Без извратов это как? И как можно?
Ответить с цитированием
  #8 (permalink)  
Старый 30.01.2016, 20:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,115

Osof,
смотрите пост 6 снова
Ответить с цитированием
  #9 (permalink)  
Старый 30.01.2016, 21:13
Новичок на форуме
Отправить личное сообщение для Osof Посмотреть профиль Найти все сообщения от Osof
 
Регистрация: 30.01.2016
Сообщений: 5

Сообщение от рони Посмотреть сообщение
Osof,
смотрите пост 6 снова
Хохо... сурово...
Благодарен. А чисто для общего развития. Почему <tr>СЮДА</tr> нельзя вставить
<td></td></tr><tr><td></td>
? Это баг или фича?
Ответить с цитированием
  #10 (permalink)  
Старый 30.01.2016, 21:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,115

Osof,
а как бедному парсеру догадаться что вы ему не хрень подсовываите? которую надо ещё разбить на части и после тега вставить а он умеет тока внутрь и то что первое сможет найти в том что ему дадут то и вставит.
Сообщение от Osof
? Это баг или фича?
ни бага ни фичи не вижу.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление строк в таблицу и скрытие таблицы. III Общие вопросы Javascript 39 20.11.2015 10:05
вставка строк в таблицу taktak Общие вопросы Javascript 2 13.02.2015 11:22
Добавление нескольких строк в таблицу CRYSIS_STALKER Общие вопросы Javascript 5 24.07.2014 22:03
Добавление нескольких колонок в таблицу nanoT1m Элементы интерфейса 3 08.06.2014 22:45
поменять цвет у нескольких строк в таблице Root Элементы интерфейса 4 21.04.2008 10:30