Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.01.2012, 16:26
Аспирант
Отправить личное сообщение для Tums37 Посмотреть профиль Найти все сообщения от Tums37
 
Регистрация: 08.10.2011
Сообщений: 32

Как заставить браузер игнорировать html код??
К примеру.
есть страница на которой есть форма с полем для ввода текста и кнопкой.
Пользователь вводить что нибудь в это поле и ниже с помощью innerHTML выводится например это: "Вы ввели 'Привет!'"

Проблема в том что пользователь может ввести любой html тег и получится лажа. как от этого избавится???

InnerText не поможет так как фраза "Вы ввели" должна быть к примеру подчёркнутой а сам текст нет!
Ответить с цитированием
  #2 (permalink)  
Старый 20.01.2012, 16:36
Лаборант :-)
Отправить личное сообщение для Pavel M. Посмотреть профиль Найти все сообщения от Pavel M.
 
Регистрация: 08.11.2011
Сообщений: 806

перед выводом текста из поля ввода
сделайте замену replace('<', '&lt;')
Ответить с цитированием
  #3 (permalink)  
Старый 20.01.2012, 16:47
Аспирант
Отправить личное сообщение для Tums37 Посмотреть профиль Найти все сообщения от Tums37
 
Регистрация: 08.10.2011
Сообщений: 32

Огромное спасибо как раз то что нужно!
Ответить с цитированием
  #4 (permalink)  
Старый 20.01.2012, 17:34
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Если вставлять текст именно как текст document.createTextNode, то теги не сработают.

Это так, к сведению. Точный ответ на вопрос.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
Ответить с цитированием
  #5 (permalink)  
Старый 20.01.2012, 17:37
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Сообщение от Tums37 Посмотреть сообщение
InnerText не поможет так как фраза "Вы ввели" должна быть к примеру подчёркнутой а сам текст нет!
Просто работать придется по другому - DOM манипуляциями, а не innerText в элемент.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
Ответить с цитированием
  #6 (permalink)  
Старый 20.01.2012, 19:09
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

На выбор:
<div id="id" />
<script>
document.getElementById('id').firstChild.nodeValue = '<p>foo</p>';
</script>


<div id="id" />
<script>
document.getElementById('id').firstChild.data = '<p>foo</p>';
</script>


<div id="id" />
<script>
document.getElementById('id').firstChild.appendData('<p>foo</p>');
</script>


<div id="id" />
<script>
document.getElementById('id').firstChild.insertData(0, '<p>foo</p>');
</script>


<div id="id" />
<script>
document.getElementById('id').appendChild(document.createTextNode('<p>foo</p>'));
</script>


<div id="id" />
<script>
document.getElementById('id').innerHTML = '<xmp><p>foo</p></xmp>';
</script>

Последний раз редактировалось monolithed, 20.01.2012 в 19:36.
Ответить с цитированием
  #7 (permalink)  
Старый 21.01.2012, 13:23
Аспирант
Отправить личное сообщение для Tums37 Посмотреть профиль Найти все сообщения от Tums37
 
Регистрация: 08.10.2011
Сообщений: 32

Спасибо но мне подошёл и первый вариант
Ответить с цитированием
  #8 (permalink)  
Старый 21.01.2012, 13:48
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Сообщение от Tums37 Посмотреть сообщение
Спасибо но мне подошёл и первый вариант
А это не тебе ответы

Будут ещё пришедшие после тебя.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как создать bodyclick код royksopp Общие вопросы Javascript 8 14.10.2011 16:39
Как получит ссылку на элемент внутри которого запустили JS код? aRpi Events/DOM/Window 20 02.10.2011 13:36
как узнать html код документа, подгруженного в iframe alexKniaz Events/DOM/Window 7 03.12.2008 12:37
На входе HTML получить на выходе просто текст, как? Dmitry Общие вопросы Javascript 2 25.08.2008 10:42
как проверить поддеружет браузер определенное событие? GOll Элементы интерфейса 9 24.07.2008 14:40