如何在 jquery 中的 if 和 else 中进行数学运算?

Posted

技术标签:

【中文标题】如何在 jquery 中的 if 和 else 中进行数学运算?【英文标题】:How to do maths in if and else in jquery? 【发布时间】:2011-08-03 03:20:57 【问题描述】:

大家好!

我一直在尝试在jQuery 中创建if/else 语句代码,但我猜我的if/else 语句是安息!我不知道出了什么问题我已经做了所有事情,但仍然无法正常工作!好的,这是我的问题清单~

    我的if/else 变反了! 而且我认为一切都变得一团糟! JsLint(jsFiddle.net)在我的 jQuery 代码中没有显示错误!

这里是我的问题演示链接~~~~~~~~~~

PROBLEM DEMO

这是我的jQuery代码~~~~~~~~~

$(function () 

  var correct = '10';
  var incorrect = '9';

  $('div.correct_incorrect').css("background",function () 

      if( correct > incorrect )
      
         return "#796";
      
      else if( correct == incorrect )
      
         return "#345";
      
      else
      
         return "#732";
      

  );
);

请帮帮我!

提前致谢

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

很抱歉打扰大家,但我之前的问题已经解决,但我遇到了这个代码的新问题。在这里,我试图从两个 input 元素中检索一个值!但它不起作用。

请看这里----

PROBLEM DEMO 2

提前致谢(对于这个也是!)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

【问题讨论】:

【参考方案1】:

问题在于correctincorrect 是字符串。您可以将它们更改为整数来解决您的问题:

                  var correct = 10;
                  var incorrect = 9;

或者,您可以使用parseInt(myNumAsString, 10) 在运行时将字符串转换为数字。

【讨论】:

嘿,你也可以看看这个。因为我对这个有问题。 jsfiddle.net/divinemamgai/aj49m/8 提前致谢! 尝试使用parseInt,像这样:var correct = parseInt($('input.correct_answers').val(), 10);var incorrect = parseInt($('input.correct_answers').val(), 10);【参考方案2】:

您需要删除 correctincorrect 变量周围的单引号。目前,它们被视为字符串,而不是整数。

var correct = 10;
var incorrect = 9;

http://jsfiddle.net/aj49m/1/

【讨论】:

【参考方案3】:

您正在比较字符串。应该是这样的(不带引号):

var correct = 10;
var incorrect = 9;

【讨论】:

【参考方案4】:

固定使用整数而不是字符串:

http://jsfiddle.net/aj49m/2/

【讨论】:

【参考方案5】:

您正在比较字符串文字“10”和“9”,而不是整数值 10 和 9。 比较字符串时,“9”大于“10”。

【讨论】:

我的意思是“9”大于“10”,就像“b”大于“a”一样。

以上是关于如何在 jquery 中的 if 和 else 中进行数学运算?的主要内容,如果未能解决你的问题,请参考以下文章

使用jquery中的if else语句获取返回真值

如何在jquery中编写if else if语句,其中条件由wordpress选项设置设置

简化javascript中的嵌套if else语句[关闭]

如何在 javascript 中的 if/else 中添加“和”

如何在 Swift 中的 if/else 语句中获取数据

如何阻止 if/else 中的 else 被执行?