Оператор JavaScript if() не оценивается должным образом

У меня есть jsFiddle, чтобы продемонстрировать мою проблему (и позволить вам, ребята, исправить меня).

Я просто проверяю значения двух входных текстовых полей и предупреждаю пользователя, если максимальная цена меньше минимальной цены, но они оценивают в обратном направлении! У меня есть if (maxValue < minValue)..., но он оценивает его так, как будто оператор «больше».

Что мне не хватает?!?

<form id="search" action="search.php" method="post">

    <label id="lblPriceMin" for="txtPriceMin">Minimum Price</label>
    <input type="text" id="txtPriceMin" name="priceMin"></input>
    <br />
    <br />

    <label id="lblPriceMax" for="txtPriceMax">Maximum Price</label>
    <input type="text" id="txtPriceMax" name="priceMax"></input>
    <br />
    <br />

    <input type="reset" id="reset" name="reset" value="Clear Form" />
</form>

Вот js,

$('#txtPriceMax').focusout(function() {

    var minValue = $('input#txtPriceMin').val();
    var maxValue = $('input#txtPriceMax').val();

    //alert ('minValue: ' + minValue + ', maxValue: ' + maxValue);

    if (maxValue < minValue) {
        alert ('The maximum value (' + maxValue + ') must be greater than the minimum value (' + minValue + ')!');
    }
});

person marky    schedule 08.08.2012    source источник


Ответы (1)


Используйте 1_

Пример jsFiddle

if (parseFloat(maxValue) < parseFloat(minValue)) 
person Gabe    schedule 08.08.2012
comment
Ах! Итак, я сравнивал строки! Спасибо, Гейб! - person marky; 08.08.2012
comment
@eventide Готов поспорить, рад, что смог помочь. - person Gabe; 08.08.2012