使用javascript以使数字对齐并且其他对齐

时间:2012-09-24 05:06:43

标签: javascript css ruby-on-rails-3

我使用过这个javascript函数:

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

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

2 个答案:

答案 0 :(得分:2)

您可以这样做:

$(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/

答案 1 :(得分:0)

为什么不能使用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" );
       }
    });
});

希望它有所帮助。