jquery数字比较

fis*_*man 2 jquery

我遇到了在jquery中比较数字的麻烦.测试代码在这里:

<script src="jquery.js"></script>
<script>
jQuery(document).ready(function(){
    var val1 = $("#aaa").attr('title');
    var val2 = $("#bbb").html();
    if(val1>=val2){
        $("#ccc").html(val1);
    }else{
        $("#ccc").html(val2);
    }
});
</script>
<div id="aaa" title="1">aaa</div>
//set title=1 show 1, set title=2 show 111
<div id="bbb">111</div>
<div id="ccc"></div>
Run Code Online (Sandbox Code Playgroud)

如代码所示,来自html dom的两个数字.现在我设置了数字div#aaa[title],如果设置为1,则为正确,如果设置为2,则结果是错误的.问题出在哪儿?谢谢.

Igo*_*mov 8

您正在比较字符串,将它们转换为int parseInt(value, 10);

var val1 = parseInt($("#aaa").attr('title'), 10);
var val2 = parseInt($("#bbb").html(), 10);
Run Code Online (Sandbox Code Playgroud)


Sam*_*ich 8

您需要比较int值,而不是字符串

jQuery(document).ready(function(){
    var val1 = parseInt($("#aaa").attr('title'));
    var val2 = parseInt($("#bbb").html());
    if(val1>=val2){
        $("#ccc").html(val1);
    }else{
        $("#ccc").html(val2);
    }
});
Run Code Online (Sandbox Code Playgroud)

代码:http://jsfiddle.net/BCKKr/