выбирая HTML, который на самом деле является числом, хотите добавить 1 и заменить его - PullRequest
0 голосов
/ 16 апреля 2009

Я пытаюсь добавить 1 к значению, которое я извлек из моего HTML, используя jquery.

В данный момент он добавляет 1, обрабатывая значение как строку.

Ответы [ 5 ]

2 голосов
/ 16 апреля 2009

Будьте осторожны с parseInt! Вы должны всегда указать второй аргумент, который является основой:

$('div.c2 a').text(
   parseInt($('div.c2 a').text(),10)+1
);
2 голосов
/ 16 апреля 2009

Вы хотите parseInt. Вы должны предоставить базовый аргумент, как упоминает Паоло, поскольку в противном случае он может быть интерпретирован как восьмеричный, если у него есть ведущий 0 (или гекс, если у него есть ведущий 0x).

js> parseInt("1", 10)+1
2
js> parseInt("010")
8
js> parseInt("0x10")
16
1 голос
/ 16 апреля 2009

По запросу (с jQuery)

$('.vote-count-post').each(function() {
  var n = parseInt($(this).text(), 10)+1;
  $(this).text(n);
});

Это добавит один к тексту элемента. В этом случае добавляет один ко всем голосам на этой странице! (работает в firebug - очень плохо, это только на странице)

1 голос
/ 16 апреля 2009

Вы можете привести строку к числу, используя функцию Number , она будет работать, когда число является целым числом или числом с плавающей запятой:

var i = Number(myValue) + 1;
0 голосов
/ 16 апреля 2009
x = parseInt(x)+1 //assuming input in an integer

или

x = parseFloat(x)+1 //assuming input is non-integer

Вам нужно принудительно преобразовать тип в целое число из строка .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...