Jquery动态文本值检查大于另一个字段值问题

时间:2013-12-26 06:49:41

标签: jquery validation

我已检查该值是否大于使用blur方法的其他字段值,但它始终显示无效。

我的代码是:

var product_offer_price = jQuery('#_product_offer_price').val();
        var product_price = jQuery('#_product_price').val();
        if(product_offer_price > product_price )
        {
            alert('invalid');

        }   
        else
        {
            alert('valid'); 
        }

product_offer_price:20 product_price:30

结果:无效

product_offer_price:10 product_price:30

结果:无效

4 个答案:

答案 0 :(得分:0)

确保比较整数而不是字符串!你最好从字符串转换成像这样的整数

product_offer_price = parseInt(jQuery('#_product_offer_price').val());

答案 1 :(得分:0)

试试这个

var product_offer_price = jQuery('#_product_offer_price').val();
var product_price = jQuery('#_product_price').val();

if(parseFloat(product_offer_price) > parseFloat(product_price))
    alert('invalid');
else
    alert('valid'); 

答案 2 :(得分:0)

您需要将文本区域的输入解析为整数。

看看这个小提琴:http://jsfiddle.net/LcMNH/1/

HTML

<input type="text" id="a">
<input type="text" id="b">

JAVASCRIPT

product_offer_price = 0
product_price = 0
$("#a").blur(function (e) {
    product_offer_price = $("#a").val();
    check();
});
$("#b").blur(function (e) {
    product_price = $("#b").val();
    check();
});


function check() {
    if (product_offer_price > product_price) alert('invalid');
    else alert('valid');
}

答案 3 :(得分:0)

请查看以下代码,您可以在此处查看工作演示:

http://jsfiddle.net/EvdNz/2/

$("#_product_offer_price,#_product_price").blur(function (e) {
    var product_offer_price = jQuery('#_product_offer_price').val();
    var product_price = jQuery('#_product_price').val();
    //alert(product_offer_price);
    //alert(product_price);
    if(product_offer_price > product_price )
    {
        alert('invalid');

    }   
    else
    {
        alert('valid'); 
    }
});

希望这能解决你的问题。