2011-09-01 2 views

ответ

5

Просто не избежать ваших < и > S:

document.getElementById('target').innertHTML = "<script> alert(1); <\/script>"; 
+2

Вы можете использовать '' <\/script> поэтому 'script' тег, что код находится в не свернут в середине строки буквальной. – icktoofay

+0

не записывайте его в теги скриптов, я использовал creatElement. Спасибо: D – Chameron

6

Я считаю, что лучше использовать чистую манипуляцию DOM. Как это:

var s = document.createElement('script'); 
s.setAttribute('type', 'text/javascript'); 
s.value = 'alert(1)'; 
document.getElementById('target').appendChild(s); 
+0

Спасибо, что ответили на мой вопрос. Я голосую за вас. –

-1
document.getElementById('target').innertHTML = '<script type="text/javascript"> alert(1); </script>'; 
+0

Это не выполняет/не оценивает введенный скрипт. – neeagl

Смежные вопросы