我有一个非常简单的HTML表单和一些JQuery来计算数字。
我遇到的问题是if语句返回与输入无关的相同数字:
$(document).ready(function()
{
$('input').change(function()
{
var behind = escape($('#behind').val());
var speed = parseInt($('#speed').val());
var diff;
if (behind = "nse") { diff = '0.83'; }
if (behind = "0.5") { diff = '1.66'; }
if (behind = "0.75") { diff = '2.49'; }
var hsr = speed-diff;
$('#hsr').html(hsr);
});
});
如果我在框中输入nse,则计算使用diff ='2.49'而不是diff ='0.83',就像我编程的那样。
包含完整代码的jsFiddle页面位于http://jsfiddle.net/Jucna/1/
有人可以解释代码有什么问题吗?
提前致谢。
答案 0 :(得分:3)
在if语句中使用比较运算符==
而不是赋值运算符=
。
<强> Live Demo 强>
if (behind == "nse") { diff = '0.83'; }
if (behind == "0.5") { diff = '1.66'; }
if (behind == "0.75") { diff = '2.49'; }
答案 1 :(得分:1)
==比较
=分配
if (behind == "nse")
答案 2 :(得分:1)
在if语句中遗漏了=
if (behind == "nse") { diff = '0.83'; }
if (behind == "0.5") { diff = '1.66'; }
if (behind == "0.75") { diff = '2.49'; }
使用一个=
分配值而不是比较它。