Javascript 从文本区域执行代码

Javascript 从文本区域执行代码,javascript,Javascript,我有一个在文本区域中接受Javascript代码的页面。我希望在用户按下run按钮时运行该代码 是否有以下可能: var programFunction = new Function(document.getElementById('program').value); <button type="button" onclick="programFunction">run</button> 当我自己尝试测试时,我没有得到任何错误,但也没有得到任何输出。您需要“运行”按钮

我有一个在文本区域中接受Javascript代码的页面。我希望在用户按下run按钮时运行该代码

是否有以下可能:

var programFunction = new Function(document.getElementById('program').value);

<button type="button" onclick="programFunction">run</button>
当我自己尝试测试时,我没有得到任何错误,但也没有得到任何输出。

您需要“运行”按钮来处理和运行代码

简单地说,就是:

onclick="eval(document.getElementById('program').value);"
请注意,在这种情况下,
eval
完全可以,前提是程序字段的值只能来自用户自己的输入,而不能来自任何其他人的输入。

您需要“运行”按钮来处理和运行代码

简单地说,就是:

onclick="eval(document.getElementById('program').value);"

请注意,在这种情况下,
eval
是完全正确的,前提是程序字段的值只能来自用户自己的输入,而不能来自任何其他人的输入。

您的代码中有几处错误:

  • 似乎您试图在获取textarea值之前访问它的内容
  • 您不运行您创建的函数
您必须在按下按钮时检索texarea的值,而不是之前。仍在使用
函数
,它看起来像:

<script>
function runCode() {
    var source = document.getElementById('program').value;
    var func = new Function(source);
    func();
}
</script>
<button type="button" onclick="runCode()">run</button>

函数runCode(){
var source=document.getElementById('program').value;
var func=新函数(源);
func();
}
跑

您的代码中有几处错误:

  • 似乎您试图在获取textarea值之前访问它的内容
  • 您不运行您创建的函数
您必须在按下按钮时检索texarea的值,而不是之前。仍在使用
函数
,它看起来像:

<script>
function runCode() {
    var source = document.getElementById('program').value;
    var func = new Function(source);
    func();
}
</script>
<button type="button" onclick="runCode()">run</button>

函数runCode(){
var source=document.getElementById('program').value;
var func=新函数(源);
func();
}
跑
onclick=“programFunction()”
只要
programFunction
是全局的,就可以工作。您在
onclick
属性中忘记了
()
。只要
programFunction
是全局的,那么
onclick=“programFunction()”
的可能重复项就可以工作。您在
onclick
属性中忘记了
()
。该属性可能重复