• ベストアンサー

JavaScript初心者です・・・。

商品の注文書を作成しています。プロバイダのCGIを利用していて、計算等はJavaScriptを使用したいのですが・・・。 JavaScriptを使って商品の個数が入力されたところだけを計算するという方法を教えていただきたいのです。 その場合、s23DA=document.form1.s23DA.value*1500; 全ての項目を上記のように設定しており自動計算をさせようとしています。 しかし、個数が入力されていない項目もCGIで飛ばしたメールに入っているので、それを取り除きたいと考えています。 どなたかお力添え願いますm(_ _)m

質問者が選んだベストアンサー

  • ベストアンサー
  • Y_eRu
  • ベストアンサー率32% (33/101)
回答No.1

こんにちわ(o^-^o) 商品の個数が入力されたところだけ、ということは 他は何も入っていないのですよね? でしたらif文をかませたらいいのではないでしょうか? 「もし、個数が入力されていたら(form1が空じゃなかったら)、値を取って来る。」 if ( document.form1.s23DA.value.length != 0 ){  s23DA=document.form1.s23DA.value*1500; } って感じで・・。 見当違いでしたらすみません(汗) 失礼しましたm(_ _)m

hiro6295
質問者

補足

早速のご回答ありがとうございますm(_ _)m となると、全ての項目に上記のIF文をかませるということですか???

その他の回答 (2)

回答No.3

CGIはよくわかりませんが、for文で回したらどうですか? 個数のオブジェクト名を <input type="text" name="syohin0"> <input type="text" name="syohin1"> <input type="text" name="syohin2"> <input type="text" name="syohin3"> <input type="text" name="syohin4"> のようにして、 スクリプトで var syohin = new Array(); for(i=0;i<5;i++){ var tmpsyohin = document.form1["syohin"+i].value; if(tmpsyohin.length != 0 ) syohin[i] = tmpsyohin; } のような感じで。

  • Y_eRu
  • ベストアンサー率32% (33/101)
回答No.2

そうですね。 チェックしたいものすべてに書く必要があると思います^^; 私はシンプルなのが好きなので 短絡的にこういう考え方で作ってしまいますが もっとスマートなやり方がありそうですよね・・(汗)

hiro6295
質問者

お礼

では、さっそく組み込んでみたいと思います♪ ありがとうございました(⌒ー⌒)

関連するQ&A

専門家に質問してみよう