web-dev-qa-db-ja.com

文字列を数値に変換して追加する

Idから取得した値を数値に変換して1を追加し、使用するdosomething()関数に新しい値を渡します。これを試してみたところ、値が1だったので、2ではなく11が返されました。

$('.load_more').live("click",function() { // When user clicks
    var newcurrentpageTemp = $(this).attr("id") + 1;// Get id from the hyperlink
    alert(parseInt(newcurrentpageTemp));
    dosomething();
});
90
Niklas

あなたが正しいとあなたのIDが(他のテキストなしで)適切な数であると仮定すると、あなたはIDを解析してからそれに1を追加する必要があります:

var currentPage = parseInt($(this).attr('id'), 10);
++currentPage;

doSomething(currentPage);
184
Justin Niessner

少しフリップフロップしてみましたか?

var newcurrentpageTemp = parseInt($(this).attr("id"));
newcurrentpageTemp++;
alert(newcurrentpageTemp));
10
Doozer Blake

1afterを追加してparseIntに渡す必要があると思います

$('.load_more').live("click",function() { //When user clicks
          var newcurrentpageTemp = parseInt($(this).attr("id")) + 1;   
          alert(newcurrentpageTemp);
          dosomething();
      });

http://jsfiddle.net/GfqMM/

8
cyco130
$('.load_more').live("click",function() { //When user clicks
          var newcurrentpageTemp = parseInt($(this).attr("id")) + 1
          dosomething(newcurrentpageTemp );
      });

http://jsfiddle.net/GfqMM/

7
Sedat Başar

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();
});
5
Jayendra

1を追加する前にIDを解析する必要があります

 $('.load_more').live("click",function() { //When user clicks
              var newcurrentpageTemp = parseInt($(this).attr("id"));
              newcurrentpageTemp ++;
              dosomething(newcurrentpageTemp );
 });
5
Jean-Charles

ここで最も簡単な解決策は、変更することです

  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
4
DevlshOne

私はこれを次のページに移動するための同様の状況で機能させています:

$("#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
4
Chris Snowden

ParseIntソリューションは、何が起こっているのかが明確であるため、最適な方法です。

完全を期すために、これは+演算子でも実行できることに言及する価値があります。

$('.load_more').live("click",function() { //When user clicks
  var newcurrentpageTemp = +$(this).attr("id") + 1; //Get the id from the hyperlink
  alert(newcurrentpageTemp);
  dosomething();
});
2
njr101
var sVal = '234';
var iNum = parseInt(sVal); //Output will be 234.

http://www.jquerybyexample.net/2013/02/jquery-convert-string-to-integer.html

1
brilliantairic
var first_value = '2';
// convert this string value into int
parseInt(first_value);
0
Ali Umair

シンプルで最適なソリューションは次のとおりです。 1つの変数の文字列を取得し、次に以下のようなparseInt()メソッドを使用して変換します。

var stringValue = '921795';
var numValue = parseInt(stringValue);

parseInt()メソッドはこの921795のような数値を返します。この後、値に任意の数値を追加できます。

http://www.phpcodify.com/convert-string-to-integer-using-jquery-parseint/

0
Ehtesham Shami

http://try.jquery.com/levels/4/challenges/16 からの良い方法:

parseIntとparseFloatおよびradixを使用せずに文字列の前に+を追加し、radixパラメータが見つからないために直面​​したエラー

サンプル

var number= +$('#inputForm').val();
0
Iman Abidi