Как заэкранировать тэг </script> в строке
Фрагмент кода страницы (это тривиальный пример, разумеется):
<script> var str="<script>var n=1;</script>"; </script> В результате js закрывается преждевременно, хотя первый </script> находится внутри строки. Можно ли каким-то образом заэкранировать закрывающий тэг внутри строки? |
var str = '<script>var n=1;<\/script>'; |
"разрывать" и первый и второй
var str="<sc" + "ript>var n=1;" + "</s" + "cript>"; |
подгрузить скрипт из файла:)
|
Цитата:
Спасибо, вопрос отпал) |
Гы)
var serializer = new XMLSerializer();
var script = document.createElement('script');
script.textContent = 'var n = 1';
var str = serializer.serializeToString(script);
alert(str);
|
Цитата:
Цитата:
Если используете JS на сервере, то просто прогоните строку через следующую функцию:
var escape_slash = function(value) {
return value.replace(/<|>/g, function(chars, value) {
return chars[value];
}
.bind(null, {
'<' : '\x3C',
'>' : '\x3E'
}));
};
alert(escape_slash('</script>'));
В разметке это будет так:
alert('\x3C/script\x3E')
|
| Часовой пояс GMT +3, время: 16:44. |