Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.02.2017, 13:09
Аватар для wmag
Аспирант
Отправить личное сообщение для wmag Посмотреть профиль Найти все сообщения от wmag
 
Регистрация: 06.02.2012
Сообщений: 50

insertAfter добавляет НЕ полный HTML - почему?
код:
$.ajax({
   url:'ajax_player_name_id_by_name?data='+key,
   success: function(data){
     var html = parse_json(data);
     $(html).insertAfter("#"+id);
     alert(html);
   }
});


вообщем выполняется некий аякс запрос, который на выходе дает HTML структуру:

<div class="bc-menu list-group" style="display: none;">
   <a href="#" class="list-group-item" data-id="IN" data-label="India">India</a>
    <a href="#" class="list-group-item" data-id="ID" data-label="Indonesia">Indonesia</a>
</div>


Но при выполнении функции: $(html).insertAfter("#"+id);
почему то на страницу, вставляется ТОЛЬКО ПУСТОЙ DIV элемент, без вложенных ссылок.
!!! Если читать alert(html), то там всё как надо.

НИЧЕГО НЕ ПОЙМУ - НУЖЕН СОВЕТ

СПАСИБО!
Ответить с цитированием
  #2 (permalink)  
Старый 28.02.2017, 13:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 29,875

wmag,
Ответить с цитированием
  #3 (permalink)  
Старый 28.02.2017, 14:46
Аватар для wmag
Аспирант
Отправить личное сообщение для wmag Посмотреть профиль Найти все сообщения от wmag
 
Регистрация: 06.02.2012
Сообщений: 50

вообщем, сокращу код, чтобы вас не отвлекать и не путать от сути вопроса:
$(html).insertAfter("#"+id);

Вот это вот не вставляет ПОЛНЫЙ HTML
Почему?

в тоже время алертом (alert(html)
видим, что переменная html содержит:
<div class="bc-menu list-group" style="display: none;">
   <a href="#" class="list-group-item" data-id="IN" data-label="India">India</a>
    <a href="#" class="list-group-item" data-id="ID" data-label="Indonesia">Indonesia</a>
</div>


НО когда использую
$(html).insertAfter("#"+id);

то вставляется лишь:
<div class="bc-menu list-group" style="display: none;"></div>
Ответить с цитированием
  #4 (permalink)  
Старый 28.02.2017, 15:14
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 12,783

Сообщение от wmag
сокращу код
Код нужно не сокращать, а делать полный тестовый пример, который проиллюстрирует проблему.
Ответить с цитированием
  #5 (permalink)  
Старый 28.02.2017, 15:39
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

wmag,
Сообщение от wmag
переменная html содержит:
<div class="bc-menu list-group" style="display: none;">
   <a href="#" class="list-group-item" data-id="IN" data-label="India">India</a>
    <a href="#" class="list-group-item" data-id="ID" data-label="Indonesia">Indonesia</a>
</div>
Прямо в таком виде?
Вот, смотрите (из вашего примера убрал только style="display: none;")
Так не работает
<div id="start"></div> 
<script type="text/javascript" src="https://code.jquery.com/jquery-3.1.1.js"></script>
<script>
$('<div class="bc-menu list-group" >
    <a href="#" class="list-group-item" data-id="IN" data-label="India">India</a>
    <a href="#" class="list-group-item" data-id="ID" data-label="Indonesia">Indonesia</a>
</div>').insertAfter("#start");
</script>

Так работает
<div id="start"></div> 
<script type="text/javascript" src="https://code.jquery.com/jquery-3.1.1.js"></script>
<script>
$('<div class="bc-menu list-group" ><a href="#" class="list-group-item" data-id="IN" data-label="India">India</a><br><a href="#" class="list-group-item" data-id="ID" data-label="Indonesia">Indonesia</a></div>').insertAfter("#start");
</script>

Так что нужны подробности
Ответить с цитированием
  #6 (permalink)  
Старый 28.02.2017, 17:21
Аватар для wmag
Аспирант
Отправить личное сообщение для wmag Посмотреть профиль Найти все сообщения от wmag
 
Регистрация: 06.02.2012
Сообщений: 50

Я ковычку одну проморгал...
спасибо за ваше внимание и поддержку!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как с помощью insertAfter вставить html код из переменной? Hurray jQuery 1 06.06.2014 23:06
Парсинг HTML -> DOM в нормальных браузерах (таки проблема) FINoM Events/DOM/Window 9 19.01.2014 16:38
Почему страница html при распечатке печатается не на всю ширину, где - то на треть. EVOSadnru6 (X)HTML/CSS 0 09.10.2013 10:13
insertBefore и insertAfter странное поведение с html Viper jQuery 0 07.02.2012 16:36
Полный список всех цветов html? Бобр Оффтопик 4 13.04.2009 14:11