0
$.post('ajax_ceneizbaze.php', function(cenovnik){

                                    if(cenovnik){

                                        cenastr=cenovnik.cenastrana;
                                        cenadinamika=cenovnik.cenadinamika;
                                        cenabaza=cenovnik.cenabaza;
                                        cenakorpa = cenovnik.cenakorpa;
                                        cenacms = cenovnik.cenacms;
                                        inkrementodrzavanje = cenovnik.cenaodrzavanje;
                                        rezz = parseInt(cenastr+cenadinamika);
                                        alert(rezz);




                                   }
                                   else alert('bla bla..');


                                },'json');

cenastrの初期値は25で、cenadinamikaの場合は50ですが、この鉱山の例ではAjaxは完全に機能しますが、cenastrとcenadinamikaの値を合計しようとすると、75ではなく2550の出力が得られます。なぜ私はそれを整数に変換できず、それらの2つの合計を取得できないのですか。結果を文字列形式でのみ出力します。合計操作の前にparseIntを配置しようとしましたが、役に立ちません。

4

5 に答える 5

1

各文字列をparseIntする必要があります。

rezz = parseInt(cenastr) + parseInt(cenadinamika);

それを試してみてください

于 2011-03-18T15:25:33.290 に答える
0

http://www.javascripter.net/faq/convert2.htm-これは役立つかもしれません。計算する前に、文字列を数値に変換する必要があります。

于 2011-03-18T15:26:55.477 に答える
0

+オペレーターには2つの目的があります。文字列では、それらを連結します。

"25" + "50" = "2550"

数字で、それはそれらを合計します。

25 + 50 = 75

したがって、2つの変数は文字列であり、それらを整数に連結した結果を解析して2550になると推測できます。

+演算子を使用して値を追加する前に、個々の値をintに解析する必要があります。

rezz = parseInt(cenastr,10) + parseInt(cenadinamika,10);
于 2011-03-18T15:28:13.070 に答える
0

parseIntは加算の結果を処理します。これは両方とも文字列であり、連結になります。

また:

parseInt(cenastr) + parseInt(cenadinamika)

または単項演算子を使用します。

(+censtr) + (+cenadinamika);
于 2011-03-18T15:28:36.487 に答える
0

追加する前に、変数が数値であることを確認してください。

cenastr= +cenovnik.cenastrana;
cenadinamika= +cenovnik.cenadinamika;
//...
rezz = cenastr + cenadinamika;
于 2011-03-18T15:29:00.403 に答える