insertbefore работает, когда я просматриваю источник, но я не вижу новый элемент dom в браузере? - PullRequest
0 голосов
/ 25 апреля 2011

Я вставляю html перед определенным элементом в ответ на ajax-вызов.

Я не вижу недавно вставленный html на странице, но если я делаю источник просмотра, я вижу его.

Я добавляю html в событие успеха вызова метода $ .ajax.

success: function(data) {
  $("#some-id").insertBefore(data);

}

Он также не скрыт, поэтому не уверен, что именнопроисходит?

Ответы [ 2 ]

1 голос
/ 25 апреля 2011

(расширение моего комментария выше)

Скорее всего, вы хотите:

$("#some-id").before(data);

или

$(data).insertBefore("#some-id");

Дополнительная информация из документации :

.before () и .insertBefore () методы выполняют ту же задачу. Основное различие заключается в Синтаксис, в частности, в размещении содержания и цели. С .before (), выражение селектора предшествующий метод является контейнером до которого контент вставляется. С .insertBefore (), с другой стороны, содержание предшествует методу, либо как выражение селектора, либо как разметка создана на лету, и она вставляется перед целевым контейнером.

0 голосов
/ 25 апреля 2011

Если #some-id по умолчанию отсутствует в DOM и вставляется динамически, вам необходимо добавить его, прежде чем использовать insertBefore()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...