传递HTML输入表单内容以进行计算

时间:2011-12-29 08:31:02

标签: javascript

我正在尝试制作一个简单函数y=k*x+b的图表 用户在输入字段中输入函数,例如:

  

三分之一* X + 3

当他/她单击提交按钮时,JavaScript函数应该将此输入值作为实际计算序列并为其分配变量(我只需要在此处获取某些y值,因此x变量具有它的极限):

for (x=1;x<=40;x++)
{
    result = window.document.menu.inputFunction.value;
}

上述代码不起作用。难怪为什么 - 我只是一个初学者。然而,这真的比它看起来更难,还是我错过了什么?我曾经考虑过尝试使用正则表达式,但是即使考虑使用它们,我的头也会受到伤害。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

你可以eval

result = eval(window.document.menu.inputFunction.value);

这种方法显然存在一些局限性:

  • 用户必须输入有效的javascript表达式
  • 用户必须使用x作为变量名称,因为这是您在循环中使用的内容
  • 代码容易受到攻击,因为用户可以输入并执行他喜欢的任何javascript表达式

对于更强大的解决方案,您可以考虑使用javascript mathematical expression evaluator