ショッピングサイトを制作しているWebデザイナーです。Java Scriptについて質問です。
私が制作しているWebサイトは、商品ページのformでインプットされたデータをサーバー上のASPに渡す仕組みとなっています。
以前は、色・サイズなどオプション項目を選択しなくてもデータが渡されてしまっていたため、validateFormを使ってオプションが選択されていない場合はエラーメッセージを表示するように修正しました。
ところがvalidateFormを付けた後、1ページに2つ以上formがあると、2つ目以降のformで(データが届かないという)ASPエラーが出るようになってしまいました。
----------------------------
以前(validateFormを付ける前)のform action部分
<form action="https://~/productProcess.asp" method="get" id="form1">
----------------------------
新しい(validateFormを付けた後)のform action部分
<form action="https://~/productProcess_new.asp" method="get" name="form1" onsubmit="return validateForm(this);">
----------------------------
これは、validateFormを付けたためデータが送られないようになってしまったのでしょうか?1ページに2つ、3つformを付けるにはどのように修正すればよろしいでしょうか?
分かる方、ご回答よろしくお願いします。
No.1ベストアンサー
- 回答日時:
validateFormの仕様がわからないのでなんとも
いえませんが、validateForm(this)をしたときに
falseを返してきているためだと推測されます。
おそらくオプションが選択状態がただしくないの
でしょう。
サブミットのチェッカーが汎用的にできているか
よくよく検証なさった方がよろしいかと思います。
今回の不具合とは無関係だとは思いますが
以前idで管理していたものをnameに換えたのは
なにか意味があるのでしょうか・・・。
当然idやnameが被らないように注意してください。
もちろん1ページに複数のフォームは問題なく
おけます。
この回答への補足
yambejpさん、お返事ありがとうございます。
「当然idやnameが被らないように注意してください」というコメントを受け、現状のサイトでformが2つある(そして動作している)ページのソースを見てみたら、1つのページ内にいくつformがあっても全てform nameが"form1"となっており、input nameも全て被っていました。そのため、同じようにname(id)を全て被らせたら、ちゃんと動作するようになりました。
きっと、ASPのinputデータ受け取り側にform nameを被らせてほしい理由があるのだと思います。プログラムを作った担当者になぜname(id)を被らせているのか聞いてみます。
(その結果は後でお知らせします)
現状使用している入力・選択チェックのJavaScriptの関係で、formのnameを被らせているとのことでした。なので、JavaScript自体を修正することにします。
yambejpさん、ありがとうございました。
No.2
- 回答日時:
JavaScriptというかHTMLの仕様の問題ですが、
ひとつのページにformが複数ある場合は、submitしたformの内容しかサーバーには送信されないはずです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
このQ&Aを見た人はこんなQ&Aも見ています
-
【お題】NEW演歌
【大喜利】 若い人に向けたことは分かるけど、それはちょっと寄せ過ぎて変になってないか?と思った演歌の歌詞
-
「平成」を感じるもの
「昭和レトロ」に続いて「平成レトロ」なる言葉が流行しています。 皆さんはどのようなモノ・コトに「平成」を感じますか?
-
「これはヤバかったな」という遅刻エピソード
寝坊だったり、不測の事態だったり、いずれにしても遅刻の思い出はいつ思い出しても冷や汗をかいてしまいますよね。
-
おすすめのモーニング・朝食メニューを教えて!
コメダ珈琲店のモーニング ロイヤルホストのモーニング 牛丼チェーン店の朝食などなど、おいしいモーニング・朝食メニューがたくさんありますよね。
-
とっておきの「まかない飯」を教えて下さい!
飲食店で働く方だけが食べられる、とっておきの「まかない飯」。 働いてらっしゃる方がSNSなどにアップしているのを見ると、表のメニューには出てこない秘密感もあって、「食べたい!!」と毎回思ってしまいます。
-
複数のフォームを一括で送信することは可能ですか?
HTML・CSS
-
複数のフォームを一括で自動送信することは可能ですか?
JavaScript
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
submitした値を返したい
-
iframe内のformをサブミットす...
-
別ウィンドウへのsubmitの挙動...
-
Chromeで複数submit
-
JavaScript:現在フォーカスの...
-
suggest.jsに関する質問
-
ページを再読み込み後、再読み...
-
リンク先アドレスの一部にテキ...
-
「利用規約の同意」複数のチェ...
-
return trueとreturn falseの用...
-
onClickとsubmitの処理順序
-
onchangeイベントを強制的に発...
-
プルダウン選択を変更すると、...
-
perl cgi文字化け解消方法と[1...
-
新しくフォルダを作成したい
-
javascriptで<table>背景色の取得
-
onClick="this.form.submit
-
tableの任意行にfocusをあてる
-
フォーム内で記入したクエリ送...
-
tabindexの取得
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FormのonsubmitでJavaスクリプ...
-
submitした値を返したい
-
javascriptでASPにデータを渡す
-
iframe内のformをサブミットす...
-
javascriptで .jpg , .jpeg , ....
-
POST時に要素を削除してからPOST
-
1つのform内に2つのsubmitボタ...
-
別ウィンドウへのsubmitの挙動...
-
C# 配列などの受け渡し
-
inputのvalueを変数として使うには
-
1つのページにformを2つ設置。2...
-
JavascriptからSubmitして画面...
-
Chromeで複数submit
-
focus()が上手くいかない
-
JavaScript:現在フォーカスの...
-
指定したタグを書き換えるには?
-
suggest.jsに関する質問
-
1つのformで複数のactionをボタ...
-
submitボタン押下後、disabled...
-
input type="image"の時、enter...
おすすめ情報