Выполнить любой скрипт в двойных кавычках - PullRequest
0 голосов
/ 19 февраля 2012

Как я могу запустить любой JavaScript в двойных кавычках?Например:

<input type="text" value="" />

Я хотел бы выполнить предупреждение или любой другой код в значении = "" (двойные кавычки).Например:

<input type="text" value="<script> onmouseover=alert(0);</script>" />

код, показанный в виде строки на странице.Так есть ли способ выполнить скрипт в двойных кавычках?

Ответы [ 3 ]

0 голосов
/ 19 февраля 2012
<input type="text" onmouseover="alert(0);" />
0 голосов
/ 19 февраля 2012

Ах, я вижу, вы, вероятно, хотите сделать что-то вроде этого:

<input type="text" onchange="try{eval(this.value)}catch(e){}" />

Этот встроенный скрипт будет пытаться выполнить то, что находится в его атрибуте value, каждый раз, когда изменяется тег (и вы стираете из элемента). Блок try catch таков, что все, что обычно не работает, не будет выполнено. Функция eval анализирует строку и запускает ее как код Javascript.

Вы оставляете себя открытым для многих форм атак, когда используете eval, поэтому, если это не для чисто образовательных или домашних целей, я бы посоветовал вам не использовать это.

0 голосов
/ 19 февраля 2012

Входной объект имеет свои собственные события, и вы должны назначить им

Например, чтобы выполнить оповещение при наведении на него мыши:

<input type="text" value="testbox" onMouseOver="alert('testing');"/>
...