使用 javascript,使数字右对齐,其他数字左对齐



我使用了这个javascript函数:

$(document).ready(function(){
    $("td").each(function() {
       if (parseInt($(this).text()) > 0) {
            $(this).css("text-align", "right");
        }
    });
});

这样,所有数字都右对齐。但我希望输入的字符串应该左对齐。我认为通过使用 NaN 是可能的,但我不知道如何使用它。有人可以告诉我使用 NaN 或其他函数的方法吗?

你可以做这样的事情:

$(document).ready(function(){
    $("td").each(function() {
       var item = $(this);
       if (item.text().match(/^-?d+$/)) {
            item.css("text-align", "right");
        } else {
            item.css("text-align", "left");
        }
    });
});

工作示例:http://jsfiddle.net/jfriend00/MyqrG/

为什么不能使用 typeof 运算符来确定数字和字符串。

$( document ).ready( function() {
    $( "td" ).each( function() {
       var textVal = $( this ).text();
       var type = !isNaN(parseFloat(textVal)) && isFinite(textVal);
       if ( !type ) {
            $( this ).css( "text-align", "left" );
       } else if ( type ) {
            $( this ).css( "text-align", "right" );
       }
    });
});

希望对您有所帮助。

最新更新