Заменить весь элемент, а не innerHTML? - PullRequest
5 голосов
/ 05 августа 2011

Я могу сделать это:

$('my-panel').innerHTML = '<p> New content </p>';

Но если есть какой-то способ сделать что-то вроде

$('my-panel').wholeHTML = "<div id='my-panel'><p> New Content</p></div>";

Я не могу найти какой-либо способ.Если я не смогу сделать что-то подобное, мне придется провести рефакторинг целого ряда вещей, которые могут занять много времени.

Ответы [ 3 ]

6 голосов
/ 05 августа 2011

А как насчет outerHTML, который включает тэг 'whole':

$('my-panel').outerHTML = '<p> New content </p>';

http://jsfiddle.net/pimvdb/Sah2U/1/

2 голосов
/ 06 августа 2011

Вы используете mootools, верно?Вы можете легко заменить элемент, например:

Elements.from("<div id='my-panel'><p> New Content</p></div>").replaces($("my-panel"));
1 голос
/ 05 августа 2011

всегда можно получить теги parentNode и заменить его innerHTML

         $('my-panel').parentNode.innerHTML = '<p> New Content</p>'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...