Проблема экранирования символов HTML в JavaScript для вывода страницы - PullRequest
2 голосов
/ 27 февраля 2011

Мне сказали, что экранирование символов HTML перед их вводом в БД - плохая идея, поэтому я модифицировал свой код так, чтобы исходный ввод сохранялся без экранирования.Теперь у меня проблема с выводом данных на веб-страницу.

В PHP я использую htmlentities () для своего вывода, и он работает нормально, но я использую AJAX для извлечения моих данных, и, следовательно, приходитсявывод с использованием JavaScript.

Я пытался использовать функцию escape () в JS, но мой вывод не выходит должным образом.Пример текста, который я использую для тестирования:

Один, два и три

Я знаю, что это проблемы с амперсандом, поэтому мой первый вопрос -Как мне избежать этого для вывода с помощью JS?Когда я удаляю это, я получаю это:

Один,% 20, два,% 20three

... поэтому мой второй вопрос, что я делаю неправильноздесь?

Есть идеи?Я уверен, что это просто для многих из вас.

1 Ответ

2 голосов
/ 27 февраля 2011

(как вам кажется, я бы сказал, что это правильный ответ)

Вы все еще можете использовать htmlentities(), если используете Ajax.Просто используйте его для ответа, сгенерированного на сервере, как если бы вы вернули HTML.Разницы нет.

...