我正在尝试将1添加到我使用jquery从HTML中获取的值。
此时它附加1,将值视为字符串。
答案 0 :(得分:2)
你想要parseInt
。你应该像Paolo提到的那样提供一个基本参数,否则它可能被解释为八进制,如果它有一个前导0
(或十六进制,如果它有一个前导0x
)。
js> parseInt("1", 10)+1
2
js> parseInt("010")
8
js> parseInt("0x10")
16
答案 1 :(得分:2)
小心parseInt
!你应该总是指定第二个参数,它是基础:
$('div.c2 a').text(
parseInt($('div.c2 a').text(),10)+1
);
答案 2 :(得分:1)
您可以使用Number函数将字符串转换为数字,只要数字是整数或浮点数,它就会起作用:
var i = Number(myValue) + 1;
答案 3 :(得分:1)
按要求(使用jQuery)
$('.vote-count-post').each(function() {
var n = parseInt($(this).text(), 10)+1;
$(this).text(n);
});
这将在元素文本中添加一个。在这种情况下,在此页面上为所有投票添加一个! (在firebug中工作 - 太糟糕了,只在页面上)
答案 4 :(得分:0)
x = parseInt(x)+1 //assuming input in an integer
或
x = parseFloat(x)+1 //assuming input is non-integer
您需要从 string 强制进行整数的类型转换。