Как я могу добавить чистую строку в div?

0

Так что это требование. Пользователь может вставлять теги внутри ввода text_field.

и я получил данные из db, как это.

var input = "test<br/><iframe src='http://stackoverflow.com/'>" ;

Я ТОЛЬКО хочу append это в строку PURE. не теги

но если я добавляю его, он работает как тег.

результат, который я хочу, - это просто печать

test<br/><iframe src='http://stackoverflow.com/'>

как чистая строка.

Любое хорошее решение?

HTML,

<div id="i_want_only_string">

</div>

JavaScript,

$(function(){
            var input = "test<br/><iframe src='http://stackoverflow.com/'>" ;
            $("#i_want_only_string").append(input);
});

DEMO

Теги:

2 ответа

2
Лучший ответ

Попробуйте добавить TextNode - создайте его с помощью document.createTextNode()

$(function () {
    var input = "test<br/><iframe src='http://stackoverflow.com/'>";
    $("#i_want_only_string").append(document.createTextNode(input));
});

Демо: скрипка


Поскольку @BillCriswell отметил ниже, если контейнер #i_want_only_string пуст, вы можете использовать .text() как

$(function () {
    var input = "test<br/><iframe src='http://stackoverflow.com/'>";
    $("#i_want_only_string").text(input);
});

Демо: скрипка

  • 0
    Если элемент пустой, OP может сделать $('#i_want_only_string').text(input); также.
  • 0
    @BillCriswell да .... если элемент пустой ... так как OP использовал append() я предположил, что это не так
Показать ещё 2 комментария
0

Вы можете append свой контейнер с contents нового тега, в котором ваш текст ввода будет отображаться как его innerText текст

$(function () {
    var input = "test<br/><iframe src='http://stackoverflow.com/'>";
    $("#i_want_only_string").append($('<span>').text(input).contents());
});

DEMO

Ещё вопросы

Сообщество Overcoder
Наверх
Меню