• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:何がおかしいのでしょうか?)

プログラミングにおけるフォームタグの問題点とは?

このQ&Aのポイント
  • プログラミングにおいて、FORMタグがなくても動作することがありますが、具体的な問題点を知りたいです。
  • 古い型のプログラミングではFORMタグを使用しなくても動作することがありますが、最新のプログラミングではどのような問題が生じるのか知りたいです。
  • 自分でプログラミングを作成した際にFORMタグがないと動作しない問題が発生しています。具体的な解決策を教えてください。

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

  • ベストアンサー
  • leap_day
  • ベストアンサー率60% (338/561)
回答No.3

こんにちはNo.1です あれから反応がないですね・・・思案中かな? こんな感じになると思います <script language ="JavaScript" > <!-- function calc(){ sub1=798*num1.value; mug.value=sub1; sub2=748*num2.value; tea.value=sub2; sub3=1780*num3.value; teatime.value=sub3; sum=sub1+sub2+sub3; total.value=sum; sub4=3*num1.value; sub5=3*num2.value; sub6=6*num3.value; sum2=sub4+sub5+sub6; souryoupoint.value=sum2; sub7=Math.ceil(sum2 / 5) * 525; if(sum>=7000){post0 = Math.floor(sub7/3) ;} else if(sum>=4000){post0 = Math.floor(sub7/2);} else{post0 =sub7;} post.value=post0; tax0=Math.floor((post0+sum)*0.05); tax.value=tax0; total2.value=Math.floor(post0+sum+tax0); } //--> </script> あと何で動かないかというと・・・ <input type="button" value="計算" onclick=calc()"> の部分 onclick="calc()" となります それからnameのないものにvalue値を渡したり計算させたりしている為です souryou.value=sub7; name="souryou"というtextboxがありません total,souryou,souryoupointなど souryou.value イコール souryouではないですので・・・

rinnshan
質問者

お礼

就寝中でしたm(_ _)m こんな夜遅くまで考えてくださってありがとうございました。 そうなのですが、textboxに対応するnameが絶対に必要に なるのですね。 複雑になればなるほどどこが間違っているかわからなくなって きますので、考えてくださって本当にありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • ape5
  • ベストアンサー率57% (85/148)
回答No.2

回答にはならないですが、<form>タグがなくても動くということですが、HTMLを解釈するブラウザの種類、バージョンなどによって動作がことなることも多いですので、rinnshanさんの環境と講義で行っている環境が違えば、動作などに違いが出る可能性があります。ですので、環境の違いによって動作がちがうのか?ということを調べるのも解決の一つかもしれません。

すると、全ての回答が全文表示されます。
  • leap_day
  • ベストアンサー率60% (338/561)
回答No.1

こんにちは こちらに移動したのですね(笑) 前回のjavascriptの方、回答する前に締め切られちゃったのでこちらに投稿しますね(^^) こちらの質問の方はまだ見てないですのでとりあえず前回作ったサンプル載せておきます 送料計算は Math.ceil(point/5)*525 の部分になります <script language="javascript"> <!-- window.onload = function(){ for(i=0;i<10;i++) { document.f.s1.options[i] = new Option(i,i); document.f.s2.options[i] = new Option(i,i); document.f.s3.options[i] = new Option(i,i); } } function cals() { num1 = document.f.elements[0].value; num2 = document.f.elements[1].value; num3 = document.f.elements[2].value; point = Math.floor(3*num1 + 3*num2 + 6*num3); send = Math.ceil(point/5)*525; document.f.point.value = point; document.f.send.value = send; } //-> </script> <form name="f"> 798円<select name="s1" onChange="cals()"></select> 748円<select name="s2" onChange="cals()"></select> 1780円<select name="s3" onChange="cals()"></select> <p> Point<input type="text" name="point"> 送料<input type="text" name="send">

すると、全ての回答が全文表示されます。

関連するQ&A