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