Я хочу превратить значение, которое я получаю от идентификатора, в число и добавить к нему единицу, а затем передать новое значение в dosomething()
функцию для использования. Когда я попробовал это, и значение было одно, я получил 11, а не 2.
$('.load_more').live("click",function() { // When user clicks
var newcurrentpageTemp = $(this).attr("id") + 1;// Get id from the hyperlink
alert(parseInt(newcurrentpageTemp));
dosomething();
});
+ 1
в конце первой строки, а не использовать++
предварительный инкрементатор во второй строке, чтобы быть более компактным.Вы пробовали немного его перевернуть?
var newcurrentpageTemp = parseInt($(this).attr("id")); newcurrentpageTemp++; alert(newcurrentpageTemp));
источник
Я считаю, что вы должны добавить 1 после передачи в parseInt
$('.load_more').live("click",function() { //When user clicks var newcurrentpageTemp = parseInt($(this).attr("id")) + 1; alert(newcurrentpageTemp); dosomething(); });
http://jsfiddle.net/GfqMM/
источник
$('.load_more').live("click",function() { //When user clicks var newcurrentpageTemp = parseInt($(this).attr("id")) + 1 dosomething(newcurrentpageTemp ); });
http://jsfiddle.net/GfqMM/
источник
Разберите Id как строку, а затем добавьте.
например
$('.load_more').live("click",function() { //When user clicks var newcurrentpageTemp = parseInt($(this).attr("id")) + 1;//Get the id from the hyperlink alert(newcurrentpageTemp); dosomething(); });
источник
У меня это работает в аналогичной ситуации для перехода на следующую страницу, например:
$("#page_next").click(function () { $("#pageNumber").val(parseInt($("#pageNumber").val()) + 1); submitForm(this); return false; });
У вас должна быть возможность добавлять скобки, чтобы добиться чего-то вроде этого:
var newcurrentpageTemp = (parseInt($(this).attr("id"))) + 1;//Get the id from the hyperlink
источник
Вы должны проанализировать идентификатор перед добавлением 1
$('.load_more').live("click",function() { //When user clicks var newcurrentpageTemp = parseInt($(this).attr("id")); newcurrentpageTemp ++; dosomething(newcurrentpageTemp ); });
источник
Самое простое решение - изменить
var newcurrentpageTemp = $(this).attr("id") + 1;//Get the id from the hyperlink
кому:
var newcurrentpageTemp = (($(this).attr("id")) * 1) + 1;//Get the id from the hyperlink
источник
Решение parseInt - лучший способ, поскольку ясно, что происходит.
Для полноты картины стоит упомянуть, что это также можно сделать с помощью оператора +
$('.load_more').live("click",function() { //When user clicks var newcurrentpageTemp = +$(this).attr("id") + 1; //Get the id from the hyperlink alert(newcurrentpageTemp); dosomething(); });
источник
var sVal = '234'; var iNum = parseInt(sVal); //Output will be 234.
http://www.jquerybyexample.net/2013/02/jquery-convert-string-to-integer.html
источник
хороший способ от http://try.jquery.com/levels/4/challenges/16 :
добавление + перед строкой без использования parseInt и parseFloat и radix и ошибок, с которыми я столкнулся из-за отсутствия параметра radix
образец
var number= +$('#inputForm').val();
источник
var first_value = '2'; // convert this string value into int parseInt(first_value);
источник
Вот такое простое и лучшее решение. возьмите строку в одной переменной и затем преобразуйте ее с помощью метода parseInt (), как показано ниже.
var stringValue = '921795'; var numValue = parseInt(stringValue);
Метод parseInt () вернет такое число, как это 921795. После этого вы можете добавить любое число к своему значению.
http://www.phpcodify.com/convert-string-to-integer-using-jquery-parseint/
источник