function htmlentities(s){ // Convert all applicable characters to HTML entities
//
// + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
var div = document.createElement('div');
var text = document.createTextNode(s);
div.appendChild(text);
return div.innerHTML;
}
После варианта с массивом всех преобразований... поиском и заменой в php.js это с этим )... просто сказка...
совершенно не подходит для цели экранирования символов с целью предотвратить выполнение js, введенный пользователем в текстовое поле.
Что? С какой радости JS, введенный пользователем в поле будет выполняться?
прогнал ) обернул вставку данных в эту функцию. а скрипт продолжал выполняться, но косяк был не в этой функции, а в том. что у меня программа в двух местах текст вставляла
Переносы строк в MSIE не сохраняются, после прогона, через эту функцию. Рабочий вариант выше, в первом посте.
Вот пруфлинк http://jsfiddle.net/PbRNx/ , попробуйте запустить в MSIE.
Отправить комментарий
Приветствуются комментарии:- Полезные.
- Дополняющие прочитанное.
- Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.Для остальных вопросов и обсуждений есть форум.