使用javascript将javascript注入文本框?

时间:2011-10-28 13:35:57

标签: javascript jquery html

我正在研究代码生成器,我想知道是否可以使用javscript将javascript注入文本框。

我不希望执行注入的javascript,我担心字符串中的引号可能会导致错误。

例如,我想注入这个脚本:

$('#click').function(){
  $('#thing').html('<a href="user.php">User</a>');
}

进入此文本框:

<textarea rows="3" cols="20" id="textbox">
</textarea>

使用javascript(jQuery)的.html()

我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:2)

您也可以使用追加功能。

$('#click').function(){
$('#thing').append('<a href=\"user.php\">User</a>');
}

答案 1 :(得分:1)

只需设置元素的值:

$('#textbox').val("whatever, including JavaScript");

您必须确保引用要放入<textarea>的代码中的引号字符,但那是因为您在JavaScript中表达JavaScript源代码并且实际上没有任何内容与HTML元素有关。

$('#textbox').val(
  "$('#click').function(){\n" +
  "  $('#thing').html('<a href=\"user.php\">User</a>');\n" +
  "}"
);

答案 2 :(得分:0)

您是否尝试使用转义字符序列,例如\'或\“?

类似的东西:

$('#textbox').html("$('#click').function(){
  $('#thing').html('<a href=\"user.php\">User</a>');
}");