将html表单值视为JavaScript语句
有没有办法在表单中提交一个JavaScript语句(比如alert(“nefvn”);),然后将其值作为语句执行将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;
[..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在什么样的情况下?