我的jQuery代码在IE7中不起作用

时间:2013-07-31 07:18:42

标签: jquery asp.net-mvc-3 internet-explorer-7

我的jQuery代码在IE7中不起作用。

它可以在IE8,更高版本以及所有其他浏览器中使用。

 $(document).ready(function () {
       $("#ListingPriceFormatted").bind('input propertychange', function () {
       $("#listingprice").val($("#ListingPriceFormatted").val().replace("$", "").replace(",", ""));
       $("#ListingPriceFormatted").val(formatCurrency($("#ListingPriceFormatted").val(), false));
    });
});


function formatCurrency(num, showCents) {
    num = num.toString().replace(/\$|\,/g, '');
    if (isNaN(num)) num = "0";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num * 100 + 0.50000000001);
    cents = num % 100;
    num = Math.floor(num / 100).toString();
    if (cents < 10) cents = "0" + cents;
    for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3) ; i++)
        num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));
    if (showCents) {
        return (((sign) ? '' : '-') + '$' + num + '.' + cents);
    }
    else {
        return (((sign) ? '' : '-') + '$' + num);
    }
}

有什么问题?

1 个答案:

答案 0 :(得分:0)

使用var声明所有变量,如果缺少IE7则会出现问题。

var sign = (num == (num = Math.abs(num)));

var cents = num % 100;