• 締切済み

Javascriptの加工

javascriptによる利益額の計算表を作りたいと思い、javascriptを勉強しています まだ勉強中で自分で0から作るのは難しいので、いろいろ検索して、下の質問のANo.5のサンプルを加工してみようと思いました http://okwave.jp/qa/q6963771.html このサンプルだと、このような表になっています この下にプルダウンで選んだ表が作成されます ▼プルダウン |(1)材料名|(2)一人前当たりの材料数|(3)[入力欄]人前|(4)合計材料数| これに(3)と同じような列を加えた表に加工したいと思っています。 やりたいこととしては、下のような感じです ▼プルダウン |(1)商品名|(2)標準単価|(3)[入力欄A]個|(4)[入力欄B]%|(4)合計材料数(単価×A×B)| もうすこし説明しますと、 プルダウンで家電フロア・AVフロアなどを選択すると、(1)(2)に商品名・商品の価格が表示 (3)に5個のような共通の台数を入れ、 (4)に80と入力して80%の価格で売ると指定 (5)に各商品の標準単価×5個×80% (全品5台限り、80%で売ると各商品の合計金額が表示されるというような感じで) こういったものを作りたいと思い、Javascriptの辞典を片手に加工しようとしているのですが、表が表示されなくなってしまったり、(4)の入力欄が表示されなくなってしまったりと苦戦しています。 どのように加工すればよいのか教えてください><

みんなの回答

回答No.1

かいとうがつきませんね。 そのサンプルのしつもんにかいとうするも、するーされたものです。 まっさらなところから、はじめてみては? (たのひとがかいたこーどを、りかいしにくくて・・・) まず、ぷろぐらむをぶんかつしてかんがえます。 (A) はいれつをていぎする (B) select ようそのあたいに、へんかがあったばあい、もととなるひょうのはいれつをえる (C) はいれつから、ひょうをせいせいする (D) input ようそにへんかがあるかかんしする (E) へんかがあればけいさんする いつものせりふですが、 ぜんかくくうはくははんかくに。 (table のせいせいにかんして、つっこみどころはありますが、ごかんべん。) ふぁいあ~ふぉっくすでしかためしてません。 <!DOCTYPE html> <html lang="ja"> <head>  <title></title>  <meta charset="utf-8">  <style> table {  border : 1px; } td > input, tfoot th {  text-align: right; } td:first-of-type input {  text-align: left; }  </style> </head> <body>  <form action="#">   <p>    <select onchange="B.call(this, event)">     <option value="">?     <option value="kaden">家電フロア     <option value="av">AVフロア    </select>   </p>     <table id="HYOU">    <thead>     <tr><th>商品名<th>標準単価<th>[入力欄A]個<th>[入力欄B]%<th>合計材料数    <thead>    <tfoot>     <tr>      <td colspan="3">&nbsp;      <td><input type="text" value="合計">      <td><input type="text" id="goukei" value="0">    </tfoot>   </table>  </form> <script> var A = {  'kaden' : [   ['洗濯機', 45000, '', '', '' ],   ['冷蔵庫', 56000, '', '', '' ]  ],    'av': [   ['スピーカー', 350, '', '', '' ],   ['鉱石ラジオ', 1580, '', '', '' ]  ] }; var B = function () {  var e = this;  var v = e.value;  var r = v ? A[v]: null;  C (r); }; var C = function (ary) {  if (! ary)   return;    var table = document.getElementById('HYOU');  var tbody = document.createElement ('tbody');  var tr, td, inp;  var i, I, row;  var j, J, col;    for (i = 0, I = ary.length; i < I; i += 1) {   tr = document.createElement ('tr');   row = ary[i];   for (j = 0, J = row.length; j < J; j += 1) {    col = row[j];    td = document.createElement ('td');    inp = document.createElement ('input');    inp.type = 'text';    inp.value = col || '';    td.appendChild (inp);    tr.appendChild (td)   }   tbody.appendChild (tr);  }  if (table.tBodies.length)   table.replaceChild (tbody, table.tBodies[0]);  else   table.appendChild (tbody); }; var D = function (event) {  var e = event./*@cc_on @if(1) srcElement @else@*/ target /*@end@*/;  var table = getP (e, 'id', 'HYOU');  if (table) E(table);  function getP (n,t,v) { return n?(v== n[t])?n:arguments.callee(n.parentNode,t,v):null } }; var E = function (table) {  var i, I;  var total = 0, p;  var cell;  for (i = 1, I = table.rows.length - 1; i < I; i+= 1) {   cell = table.rows[i].cells;   p = V(cell[1]) * V(cell[2]) * V(cell[3]) / 100;   W (cell[4], p);   total += p;  }  document.getElementById('goukei').value = total;    function V (td) { return td.firstChild.value;}  function W (td,v) { td.firstChild.value = v || ''} }; document./*@if(1) attachEvent( 'on'+ @else@*/ addEventListener(/*@end@*/  /*@if(1) 'focusout' @else@*/ 'blur' /*@end@*/, D, true ); </script> </body>

関連するQ&A

  • JavaScriptによる自動計算フォーム

    サンプルを読んだりは多少わかる範囲なのですが、カスタムの段階で詰まってしまいましたのでお知恵お貸し頂ければと思います。 積算の自動計算フォームを作成しようとしてるのですが、サンプルでよくあるものが固定数値×プルダウン=小計のようなものが多く、この固定数を入力フォーム、プルダウンも入力フォームに切り替えたいのですが、変更すると合計欄がNaNと表示されてしまいます。 何か指定が間違っているのでしょうか。 こちらのサイトを参考に作っています。 http://www.tagindex.com/javascript/form/comp1b.html 宜しくお願いします。

  • Excelで材料管理表を作っています。

    Excelで材料管理表を作っています。 使用した商品名に使用された数と単価の入力をしています。 同じ商品名を何度も入力することが多いのですが 単価を一回づつ戻って見直さないと単価がわからなくなってしまいます。 商品名を記入したら特定のセルに単価が自動で入力される方法はあるのでしょうか? マクロの使い方も今ひとつ、わかりません。 ご存知の方、教えて下さい。 Excelのバージョンは2000です。

  • DOM + Javascript について

     プルダウンメニューで注文数を変更できるオーダーフォームがあると思いますが、注文数を変更した後、再計算といったボタンでリフレッシュしなければ反映されません。 これをプルダウンを選んだ次点(onChange)で変更した注文数に小計・合計等を再計算したいと思っています。    DOM + Javascriptで可能と思っているのですが、参考になるようなサイトを紹介して頂けないでしょうか? できれば具体的に行っているところが嬉しいです^^; #プルダウンを選択するとテキスト表示の小計と合計を再計算する。その他<input type=hidden~等も更新したいです。

  • エクセルでセルをクリックしてプルダウンのようなもの

    エクセルで、合計数字を表示するセルをクリックしてプルダウンのようなものを出せて、そこに数字を入力し、その合計をセルに返すことはできるのでしょうか? ........A...............B..... 1...商品......販売数 2.....あ............140 3.....い..........1000 4.....う.............300 上の様に見える表を完成させたいのですが、例えばB列の商品"あ"の販売数を、 B2をクリックするかなにかして、プルダウンで 3/15 A社 50 2/06 B社 10 4/10 C社 80 と入力し、その合計数をB2に表示させたいのです このような事はエクセルでできますでしょうか? 入力する”3/15 A社 50”ののような項目は1品目で最大30項目くらいになりますので、 あくまで行数や列数を増やしたりしたくないもので、入力サブシート?的なものに入力し、 合計数を目的のセルへ表示したいのです VBなどあまりいじった事ないのですが、お分かりの方がおられましたらご教授願えませんでしょうか どうぞ宜しくお願い致します

  • JavaScriptで簡易お買い物サイト

    すっかり、JavaScriptを忘れてしまっていて、それでも即答が求められているので質問させていただきます。 PHPやCGIは使用することは出来ない状態で簡易お買い物サイト制作を依頼されました。PHPやCGIが使用出来ないってことはJavaScriptしか使えない?と思っています。このようなサイト構築はJavaScriptだけで可能でしょうか?(cookieを使用する予定です)ご教授いただけると助かりますのでよろしくお願いいたします! 流れはこんな感じです。 1)商品ページ(商品の詳細の掲載されているページ)+「注文」ボタン 注文ボタンをクリック 2)注文ページ(メールフォームで最終的には送る)   商品名(※)、単価(※)、個数(デフォルトで1個。セレクタで選べるようにする)、削除ボタン   (※)商品ページの「商品名」「単価」が自動表示   合計金額が自動反映   注文に必要なテキストフィールド(送り先住所やお名前など)   他に欲しい商品があれば商品ページに戻って注文ボタンをクリックして追加していく仕組みです。

  •  領収書の金額の書き方(消費税)について

       数量   単価   金額 商品1 商品2 商品3 空欄 空欄 合計  領収書の様式として,考えて下さい。この様式は消費税が無いときからいままで使っています。係りによってまちまちな使用方法です。経理も計算が間違っていなければ とくに、いいません。統一した書き方を提案したいと,思いますのでよろしくおねがいします。 商品1が100個単価50円で売った場合の書き方 1商品1の欄に100単価の欄に50金額の欄に5,000金額の下の合計欄に5,250とする。 2.商品1の欄に100単価50金額欄に5250としその金額金額の上に(250)とかく。合計欄には5250 とする 3.商品1の欄に100単価52.5(1.05倍して表示)金額欄に5250とする。合計欄も同じ もっと別な方法があるようですが、適切な方法は、どの方法が良いかアドバイスお願いします。なお手書き伝票です。又別な方法がありましたら教えて下さい。

  • 商品の単価と個数を入力するだけで合計金額を出したいのですが。

    エクセルのA列に商品名を入力(現在42行あります)し、B列に商品の単価を入力、さらにC列以降は4月(C列)、5月(D列)、6月(E列)・・・というふうに月別に列を設けて表を作っています。 そして、商品を注文した場合にだけ、各商品の個数を、その商品名の行(で且つその月の列)に入力していき、一番下の行(現在は43行目)にその月に注文した全てのものの合計金額がいくらであったかを表示させています。 最初は注文する商品が少なかったので、 =$B$1*C1+$B$2*C2+$B$3*C3 というような計算式を合計金額の欄に入力し、それを月ごとの合計金額の欄にコピーして貼り付けて使用していたのですが、だんだん商品が増え、計算式が膨大になって見苦しくなってきました。 もっと簡単に計算してくれる関数があればと思うのですが、みつかりません。 どなたか教えてください。

  • php、MySQL、javascriptで

    php MySQL javascriptを使ったウェブアプリを作っています。 商品コードを入力すると、隣の欄にその商品コードに対応する商品名と価格が表示され、それにより入力した商品コードを確認しながら、さらにその隣の個数欄に個数を入力し、その下の登録ボタンをクリックして、注文票に商品を追加していきます。 数品のレコードを登録し、登録が完了したら、最下部の「この内容で注文票を確定する」ボタンをクリックすることにより、注文票が確定されるという内容の部分があります。 その上手な作り方があるでしょうか。 とりあえず、力技で何とか作って動いてはいますが、あまりスマートでないと感じています。 Submitボタンが2つと、商品コードを入力した後に、onBlurで処理ページに移動し、そこからLocationで戻ってくるという作りで、変数の受け渡しにPOSTやMySQLを使い、強引な感じです。 getElementByIdを使うといいかなと思いましたが、phpに値を渡すなど、いくつか難しい箇所があり、断念しました。 コードでなく、言葉でも結構ですから、こういう流れで作ったら?というヒントなどいただければ幸いです。 同様なことを実現しているページや解説ページも大歓迎です。 もちろん、コードによる説明は大歓迎です。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • JavaScriptで簡単な購入画面を作りたいのですが…

    JavaScriptに関して無知なので教えてください。 1つ目のプルダウンメニューから商品の選択をして、 その隣にその商品の値段を表示さる、というだけなの ですが、調べてもよく分かりませんでした。 どのような記述方法をすれば良いのでしょうか? どなたか教えてください。お願いします。

  • エクセルの計算式を教えてください

    1ヶ月のスタッフごとの対応金額を出したいので計算式を教えてください。 CとE欄に早番と遅番の売り上げの金額を入力しDとF欄にスタッフ名をプルダウンで入力します。 計算式を教えていただきたい部分はJの欄に左記のプルダウンで選んだスタッフごとの売り上げの合計、Kの欄にその合計をスタッフの名前の数で割った1日の平均を出したいです。 出勤がシフト制なので毎月出勤日数が違うのでプルダウンで選んだ数で割った平均金額が知りたいです。 よろしくお願いいたします。

専門家に質問してみよう