0

我使用了这个 javascript 函数:

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

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

4

2 回答 2

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/

于 2012-09-24T05:10:03.423 回答
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" );
       }
    });
});

希望能帮助到你。

于 2012-09-24T05:34:41.890 回答