Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有输入字段条件的JavaScript IF语句_Javascript_Jquery_Html - Fatal编程技术网

带有输入字段条件的JavaScript IF语句

带有输入字段条件的JavaScript IF语句,javascript,jquery,html,Javascript,Jquery,Html,我试图从输入文件中生成一个简单的计算usign值,但在将值传递给if语句时遇到问题。看起来是这样的: $('#confirmSila').click(function(){ var dlugosc = $('#sila').val(); var silaOd = $('.silaOd').val(); var silaDo = $('.silaDo').val(); if ((dlugosc > silaOd) && (dlugosc < silaDo)) { //$

我试图从输入文件中生成一个简单的计算usign值,但在将值传递给if语句时遇到问题。看起来是这样的:

$('#confirmSila').click(function(){
var dlugosc = $('#sila').val();
var silaOd = $('.silaOd').val();
var silaDo = $('.silaDo').val();
if ((dlugosc > silaOd) && (dlugosc < silaDo))
{
//$('#orderWymiar').attr('value', dlugosc);
$('#sila').css('border', '1px solid green');
$('.silaInfo').text('Statement true');
}else{
$('#wymiar').css('border', '1px solid red');
$('.silaInfo').text('silaOd must be more than' + silaOd + ', and less than ' + silaDo);
}
});
最关键的是,当force为20时,JavaScript表示它在输入时通过了statemenst。在波兰,silaOd是minForce,sildaDo是maxForce

我不知道为什么会这样。请帮忙


有一个有效的例子:

您正在比较字符串,因此不起作用。您需要将它们转换为int

例如:

parseInt(dlugosc) > parseInt(sila0d)
您需要对输入值运行parseInt,如下所示:

var dlugosc = parseInt($('#sila').val());
var silaOd = parseInt($('.silaOd').val());
var silaDo = parseInt($('.silaDo').val());
试试这个:

$.fn.tryParseInt = function(defaultValue) {

    var 
        retValue = defaultValue,
        actualValue = $(this).val();

    if (actualValue != null) {
        if (actualValue.length > 0) {
            if (!isNaN(actualValue)) {
                retValue = parseInt(actualValue);
            }
        }
    }

    return retValue;
}


var 
  dlugosc = $('#sila').tryParseInt(0),
  silaOd = $('.silaOd').tryParseInt(0),
  silaDo = $('.silaDo').tryParseInt(0);

我希望这些变量在你所说的语言中是可以理解的,因为如果不是,那只是令人困惑的……你可能也会这么认为。