parseInt(数字)notwork

时间:2015-02-25 10:08:48

标签: css numbers parseint

我想检查我的div是否有一个数字并添加类css。 我试过这个:

<div class="test" style="">
   <p class="book"> 24 books</p>
</div>

jQuery('.test').addClass('ok');
var number = parseInt(jQuery(this).find('.book').text(), 10);
var current = 26;
if (current > number)
{
jQuery('.test').addClass('its-ok');
}

我的班级&#34;好的&#34;是添加但是类没有添加。

在jsfiddle:http://jsfiddle.net/8tg9exLw/2/

3 个答案:

答案 0 :(得分:1)

的结果
parseInt(jQuery(this).find('.book').text(), 10);

NaN,因为$(this).find('book')是一个空选择器(在您的上下文中应该是$(this)的值是什么?)

改为parseInt($('.book').text(), 10);

答案 1 :(得分:0)

试试这个,,,

添加“$(document).ready(function(){});”

    $(document).ready(function(){
jQuery('.test').addClass('ok');

var number = parseInt(jQuery(this).find('.book').text(), 10);
var current = 26;
if (current > number)
{
jQuery('.test').addClass('its-ok');
}
});

答案 2 :(得分:0)

<强> Updated Working jsFiddle

在以下jQuery代码中:

parseInt(jQuery(this).find('.book').text(), 10);

它没有得到this

我认为你的意思是使用this,而不是.test。检查上面更新的jsFiddle。

因为current < number而未满足您的if条件。

JS:

jQuery('.test').addClass('ok');

var number = parseInt(jQuery('.test').find('.book').text(), 10);

console.log(number);

var current = 2;
if (current > number)
{
    jQuery('.test').addClass('its-ok');
}
else
{
    console.log("If condition not satisfied.");
    // do something here
}

编辑:对于小于当前的已解析整数,请检查此工作jsFiddle:http://jsfiddle.net/8tg9exLw/4/