как мне использовать конструктор узлов из Scriptacolus для вставки html
-
09-06-2019 - |
Вопрос
например, этот код
var html = "<p>This text is <a href=#> good</a></p>";
var newNode = Builder.node('div',{className: 'test'},[html]);
$('placeholder').update(newNode);
если необходимо отобразить теги p и a, как мне предотвратить их экранирование?
Решение
Последним параметром для Builder.node является "Массив, список других узлов, которые будут добавлены в качестве дочерних" в соответствии с Вики.Поэтому, когда вы передаете ему строку, она обрабатывается как текст.
Вы могли бы использовать:
var a = Builder.node('div').update("<a href='#'>foo</a>")
Где ссылка представляет собой текст или:
var a = Builder.node('div', {'class':'cool'},
[Builder.node('div', {'class': 'another_div'})]
);
И вы могли бы использовать только Прототипы новый элемент() (Доступно начиная с версии 1.6).
var a = new Element('div').insert(
new Element('div', {'class': 'inner_div'}).update("Text in the inner div")
);
Другие советы
Вы можете использовать это решение: http://sviudes.blogspot.com/2009/08/como-usar-etiquetas-html-con.html
Не связан с StackOverflow