2011-03-16 56 views
7

我正在使用jQuery来检索输入按钮提交的值。该值应该是一个整数。我想增加一个并显示它。如何将HTML输入值的数据类型更改为整数?

// Getting immediate Voting Count down button id 
var countUp = $(this).closest('li').find('div > input.green').attr('id'); 
var count = $("#"+countUp).val() + 1; 
alert (count); 

上面的代码给了我一个连接字符串。举例来说,值是3.我想得到4作为输出,但代码产生31.

如何将HTML输入值的数据类型更改为整数?

+1

附注:任何来自HTML的文本默认都是一个字符串,因为HTML是字符串:) – 2011-03-16 15:11:23

回答

17

要转换成strValue的整数,在使用:

parseInt(strValue, 10); 

或一元+操作。

+strValue 

注radix参数到parseInt因为前导0将导致parseInt的假设,该输入是在八进制,和010输入将给出

5
parseInt( $("#"+countUp).val() , 10 ) 
+0

这里的10是否表示小数? – ptamzz 2011-03-16 15:06:52

+1

是的。否则,你会得到如'parseInt('010');'* 8 * *的结果。 – Quentin 2011-03-16 15:09:22

+0

@ptamzz - 是的,它的确如此。默认值是“尝试猜测”。 – 2011-03-16 15:09:52

2

使用parseInt函数为:var count = parseInt($("#"+countUp).val(), 10) + 1;+操作符如var count = +$("#"+countUp).val() + 1;

0
var count = parseInt(countUp, 10) + 1; 

8而不是10的值见w3schools webpage for parseInt

+3

不要使用没有基数的parseInt,不要使用w3schools(http://w3fools.com) – Quentin 2011-03-16 15:10:02

相关问题