将html表单值视为JavaScript语句

将html表单值视为JavaScript语句,javascript,html,forms,Javascript,Html,Forms,有没有办法在表单中提交一个JavaScript语句(比如alert(“nefvn”);),然后将其值作为语句执行 [..omitted..] <script type="text/javascript" function doSomething(){ //Like this? var a = document.forms[0].elements[0].value; a;

有没有办法在表单中提交一个JavaScript语句(比如alert(“nefvn”);),然后将其值作为语句执行

[..omitted..]
    <script type="text/javascript"
        function doSomething(){
            //Like this?
            var a = document.forms[0].elements[0].value;
            a;
            return;
            //Or just this?
            document.forms[0].elements[0].value;
            }   
    </script>
</head>
</body>
    <form>
        <input type="text" id="doThis">
        <input type="button" onClick="doSomething()"
    </form>
[..omitted..]
[…省略..]


eval(a)
将(尝试)在
a
中执行javascript代码。出于任何非测试目的,尽量避免使用它。

eval(a)
将(尝试)在
a
中执行javascript代码。出于任何非测试目的,尽量避免使用它。

eval(a)
将(尝试)在
a
中执行javascript代码。出于任何非测试目的,尽量避免使用它。

eval(a)
将(尝试)在
a
中执行javascript代码。出于任何非测试目的,尽量避免使用它。

将OnClick设置为“var='X';doFunction()”

将OnClick设置为“var='X';doFunction()”

将OnClick设置为“var='X';doFunction()”

将OnClick设置为“var='X';doFunction().

您可以使用onsubmit事件来存放此类代码。您可以使用onsubmit事件来存放此类代码。您可以使用onsubmit事件来存放此类代码。您可以使用onsubmit事件来存放此类代码。请阅读eval的文档,因为它经常被滥用,但这将是正确的使用位置it@DamianSilva你不应该养成使用的习惯
eval
通常,因为它的速度很慢,而且除非您是唯一能够影响传递到
eval
的字符串的人,否则这是一个潜在的安全问题。如果您确实可以完全控制传递给
eval
的字符串,那么您可能不需要从
eval
开始。@JosiahKeller,如果您可以完全控制,你会用什么来代替?@DamianSilva在什么样的情况下?阅读eval的文档,因为它经常被滥用,但这是一个合适的地方it@DamianSilva你不应该养成经常使用
eval
的习惯,因为它很慢,因为除非你是唯一能影响字符串传递到
eval
的人,否则这是一个潜在的安全问题。如果您确实可以完全控制传递给
eval
的字符串,那么您可能不需要从
eval
开始。@JosiahKeller,如果您可以完全控制,你会用什么来代替?@DamianSilva在什么样的情况下?阅读eval的文档,因为它经常被滥用,但这是一个合适的地方it@DamianSilva你不应该养成经常使用
eval
的习惯,因为它很慢,因为除非你是唯一能影响字符串传递到
eval
的人,否则这是一个潜在的安全问题。如果您确实可以完全控制传递给
eval
的字符串,那么您可能不需要从
eval
开始。@JosiahKeller,如果您可以完全控制,你会用什么来代替?@DamianSilva在什么样的情况下?阅读eval的文档,因为它经常被滥用,但这是一个合适的地方it@DamianSilva你不应该养成经常使用
eval
的习惯,因为它很慢,因为除非你是唯一能影响字符串传递到
eval
的人,否则这是一个潜在的安全问题。如果您确实完全控制了哪些字符串被传递到
eval
,那么您可能不需要从
eval
开始。@JosiahKeller,如果您要完全控制,您会使用什么替代方法?@DamianSilva在什么样的情况下?