- ベストアンサー
料金計算→3桁でカンマを入れたい
料金計算で合計の数字にカンマを入れたいと思います。何とか本を読み読みここまで来たのですが・・ on (press) { total = _root.pretotal.text; _root.pretotal.text = total.length; //文字数を取得 if (total.length>3) { _root.total.text = (total.substr(0, -3))+","+total.substr(-3); } } ↑これだと「3ケタ目にカンマを追加」だと思うので、12346,789となってしまいます。 どんどんカンマを追加するにはどうしたらういいのでしょうか。。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (1)
関連するQ&A
- 複数のダイナミックテキストに1000桁ごとのカンマの打ち方
先日、1000桁ごとのカンマの入れ方を教えていただき、上手くいったのですが、複数のテキストボックスにカンマを打ちたいと思い、Array を使ったのですがうまくいきません。根本的に何かが違うのだと思いますが、何処が違うのか教えていただきたく投稿しました。 どうぞよろしく御願いします。 on (press) { 計算式が入っています my_array[1] = new Array( ninendrieki , sannendrieki , gonendrieki , yonendrieki ) my_array[2] = new Array( _root.gonendriekiQ.text , _root.yonendriekiQ.text , _root.ninendriekiQ.text , _root.sannendriekiQ.text ) org = new String( my_array[1] ) temp = new String( "" ); cnt = 0; for( i = org.length - 1 ; i >= 0 ; i-- , cnt++ ) { temp += org.charAt( i ); if( cnt % 3 == 2 ) { temp += ","; } } if( temp.charAt( temp.length - 1 ) == "," ) { start_index = temp.length - 2; } else{ start_index = temp.length - 1; } my_array[2] = ""; for( i = start_index; i >= 0 ; i-- ) { my_array[2] += temp.charAt( i ); } }
- ベストアンサー
- Flash
- 3桁カンマを一斉に付けたい
表があって、表の中の複数のテキストボックスに数値・文字を入れて、最後にボタンを押すと、数字のテキストボックスのみ3桁のカンマを入れたい。こういう便利なこと?をしたいのですが、新米にはむずかしい。
- ベストアンサー
- JavaScript
- 変数の戻り値を作りたい
戻り値を作ってみてるのですが、うまくいきません。 画像6枚入れたとして、ボタンに on (release) { cnt = cnt-2; } を作りましたが、1枚目のマイナスの値がないため、バグります。 ※多分小数点になりSTOP そこで、ボタンを足し算で合計にしてみたら、totalを超えると0に戻される為、1枚目にしか戻りません。 ifで制御しようと、ひとまず if (cnt>total-1) { cnt=total-1; } を追加したら、最初から常に6枚目が表示されてしまいます。 なぜ cnt>total-1 の方が勝ってしまうのでしょうか? ======================================================== cnt = -1; _root.total = this.childNodes[0].childNodes.length; if (cnt<total-1) { cnt++; } else { cnt = 0; } ========================================================
- ベストアンサー
- Flash
- カンマの付け方
ファンクションの中で記述した数式の結果に 三桁区切りでカンマをつけたいのですが、 どうすればよろしいのでしょうか。 lstArariYosan.value = Math.floor(lstUriageYosan.value.replace(",","") * lstArariRitu.value); 今は、こんな感じでカンマを外して計算しています。 計算結果を出した後、逆にカンマをつけてから 表示するようにしたいのですが、 何かいい方法はありますか? また、下記がカンマ編集のメソッドの様ですが、 これを使って表示しようとするとエラーになります。 function addComma(su) { var ret=""; var fugou=""; if(su.length>0 && su.substring(0, 1) == "-") { ret = su.substring(1, su.length); fugou = "-"; } else { ret = su; } if(ret.length>3){ for(i=3;i<ret.length;i+=4){ var moji=ret.substring(0,ret.length-i)+','+ret.substring(ret.length-i,ret.length); ret = moji; } } return (fugou + ret); }
- ベストアンサー
- JavaScript
- JavaSの追加計算
function keisan(){ // 設定開始 var price1 = document.form1.kazu.value; // 合計を計算 if (price1 < 10000) { var total = parseInt(price1)*44/10000; } else { var total = parseInt(price1)*45/10000; } else if // 設定終了 document.form1.field_total.value = total; // 合計を表示 } // --> </SCRIPT> 上記に追加で*22/10000の計算を入れたいのですがどうしたらいいのですようか? 初心者なので申し訳ございませんがご教授お願い致します。
- 締切済み
- JavaScript
- 0で上の桁をうめる方法
$no = 1; $total = sprintf("%4d",$no);#total=1; としたときに、 $totalの値は当然1になりますが、これを $totalの値が0001になるようにする『シンプル』でいい方法は無いでしょうか。都合により、sprintf関数は除外しかねます。でも除外した方法でもいいです。 if文で、 $noが一桁のときは、$total = "000" . "$no"; $noが2桁のときは… という方法以外でお願いします。なぜかというと、%5d とか%7dとかしたときにも対応できるようにしたいからです。それと当然$noの値が111であれば、%4dであれば、$totalの値は0111です。 すこしわがままですが、よろしくお願いします。
- ベストアンサー
- CGI
- エクセル:桁区切り「カンマ」でセルが分割されて貼り付けされてしまう
仕事で社内のシステムから売上の情報をコピーしてエクセルに貼り付けて処理をしようとしたところ、コピーした数字に「桁区切りのカンマ","」がある関係で、 たとえば 1,234,567 という数字が 1 と 234 と 567 とセルが分割されて貼り付けられてしまいます。 CSVファイルのカンマ区切りデータと同じように情報がカンマで分割されてしまっているようなのですが、貼り付けの際に分割されないようにするにはどうしたらよいでしょうか? ちなみに、これらデータはスペースで区切られているので一度テキストファイルに保存して、CSVを開くときの区切り文字の設定を「スペース」に設定すればうまく開くのはわかるのですが、コピーして即貼り付けのときにこのようになることを回避する方法はあるのでしょうか?マクロを組んでも構いません。 どうぞ、ご教授、宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- 変数の内容(桁区切り金額)をカンマ無しにする方法は?
現在、フリーのショッピングカートCGIを利用しています。 今回、カード決済を導入する事になりました。 そこで、このカートcgiの中から金額をカード決済サイトへformで渡す必要が出てきました。 cgi内部では、金額は $total という変数で保持されています。 この変数をカード決済サイトへformを使って送ろうとすると、$totalの内容が例えば「5,500」のように桁区切り付きで渡されてしまうため、カード決済サイト側でエラーとなってしまいます。 カード決済サイトのエラーメッセージは、 「半角数字以外の文字が含まれています」です。 カートcgiから$totalをブラウザにprintしてみても、やはり「5,500」のようにカンマが入っています。 このカンマをなくし、「5500」という数字のみの形で例えば$newのような新しい変数に格納したのですが、私の技術不足のため思うようにいきません。 どなたかご教授下さい。 どうか宜しくお願い致します。
- ベストアンサー
- CGI
- now loding.......
onClipEvent (load) { total = _root.getBytesTotal(); } onClipEvent (enterFrame) { loaded = _root.getBytesLoaded(); percent = int(loaded/total*100); text = " "+percent+"%"; gotoAndStop(percent); if (loaded == total) { _root.gotoAndPlay(2); } } と、いうスクリプトが記述されているのですが、すべてダウンロードしないうちに再生してしまい、ナローバンドで見たときに、途中の動きがギクシャクしてしまいます。 このスクリプトをどういじれば解決するのでしょうか? ご教授くだされば幸いです。
- 締切済み
- Flash
- JavaScriptを使った計算フォーム
JavaScriptを使った計算フォームで質問です。 人数をテキストボックスに入力し、そのあと項目を選ぶと計算がされるようにしたいのですが ラジオボタンが持っているvalueを取り出せません。 下記の「←------???」と書いてあるところを何とかすれば完成だと思うのですが、 どなたか教えていただけないでしょうか? <script language="JavaScript" type="text/JavaScript"> function sjLeft(source,length) { if (source.length < length) { return (""); } return source.substr(0, length); } function sjReplace(source,start,length,target) { sjlen = source.length; if ((start > sjlen) || (start < 0)) { return String(""); } return String(sjLeft(source,start ) + target + source.substr(start+length, sjlen)); } function sjInsert( source, start, target) { return sjReplace(source,start,0,target); } function fcheck(obj) { s1_2value = ??? * new Number(document.form1.n1.value); ←------??? document.form1.s1_2.value = String(s1_2value); document.form1.total.value = s1_2value; return true; } </script> <form name="form1" method="POST"> <table width="400" border="1"> <tr> <td>人数</td> <td></td> <td><input type=text name=n1 size=8 onChange="fcheck(this);">人</td> <td></td> </tr> <tr> td><input name="n2" type="radio" value="13000" onChange="fcheck(this);">食事A</td> <td>\13,000</td> <td>×人数</td> <td><input name=s1_2 type=text size=8 readonly>円</td> </tr> <tr> <td colspan="2"> </td> <td>総計</td> <td><input type=text readonly name=total size=10>円</td> </tr> </table> </form>
- ベストアンサー
- JavaScript
お礼
ご回答ありがとうございます。 お返事が遅くなってしまい申し訳ありませんでした。 分りやすいご説明と頂いたソースで試した所、うまく行きました!! しっかりカンマ付けされています。 重ねて、ありがとうございました!