Текстовая область в HTML

0

У меня есть простой элемент <textarea> который я хотел бы преобразовать в HTML-код ссылки (www.google.com, msn.com и т.д.) И новые строки (\r\n).

У меня есть одна библиотека, которая может конвертировать ссылки в <a hrefs>. У меня есть другая библиотека, которая способна преобразовать в новые строки <br> с.

Вот сложная часть.

У AngularJS есть директива, которая преобразует строки в html < div ng-bind-html но я не хочу, чтобы пользовательский ввод был преобразован в html, только новые строки и ссылки.

Например, если пользователь вводит Привет, мое имя <b> John Doe </b> Я НЕ хочу, чтобы теги <b> были преобразованы в HTML.

Любая помощь? Я пытаюсь избежать использования WYSIWYG, поскольку они обычно поставляются с большим количеством, чем мне нужно.

  • 0
    Таким образом, он должен заменить символы новой строки на <br> и обернуть URL в теги <a> . Должен ли он лишить другой HTML? В вашем примере <b>John Doe</b> станет John Doe
  • 0
    Почти теги <b> должны оставаться там, но не конвертироваться в HTML. Это для простой страницы комментариев, где я хочу, чтобы ссылки и новые строки работали, но не выполняли код при визуализации.
Показать ещё 1 комментарий
Теги:
wysiwyg

1 ответ

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

Перед запуском тех библиотек, которые создают HTML-теги, вам нужно вывести HTML-содержимое пользователя.

Это гарантирует, что единственными остальными тегами HTML являются те, которые создаются вашим кодом.

  • 0
    Будет ли DIV, установленный для contenteditable, делать это автоматически (в отличие от использования TEXTAREA)?
  • 1
    @ Роберто: Нет; это позволило бы произвольный HTML.
Показать ещё 2 комментария

Ещё вопросы

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