<form>の設置に付いて質問です。
この様な設置というものは基本的にありえないのでしょうか??ソースはショッピングカートのASPに渡すものなのですが・・・。例として、サッカーの映像をDVDとヴデオから選択するという感じです。
<td>
<form action="https://www.○○○.com/cartcgi">
サッカー映像<br>
<select name="option1"><option value="DVD">DVD<option value="VIDEO">VIDEO</select>
</td>
<td>1,000円</td>
<td>
<input type=hidden name="number" value="0001">
<input type="hidden" name="user" value="abc">
<input type=submit value="カートに入れる">
</form>
</td>
様は、複数またがった<td>に対して、飛んで</form>が来ているという物です。
これをどうにか無理やり設定した場合、何とか見た目も動作もするのですが、ホームページソフトで(有名どころ全て)で、ぐちゃぐちゃになってしまい、閲覧が困難な状態になってしまいます。
DW何かでは、テーブル部分が一箇所飛び出てしまいます。
そこで、根本的に定義に問題があるのだと思い調べるのですが、このようなことを書いてあるところが発見できません・・・。
やはり<form>は1箇所の<td>内で記述するのが本来の使い方なのでしょうか??
変な質問ですが、お詳しい方いらっしゃいましたら、アドバイス宜しくお願いいたします。
No.1ベストアンサー
- 回答日時:
ありえないか?といわれればありえませんね。
やるのであれば、
<form>
<table>
<tr>
<td><select><option></option><option></option></td>
<td>1000円</td>
<td><input type="submit"></td>
</tr>
</table>
</form>
(属性はめんどくさいので省略ました)
つまり、<table>と</table>の中に<td></td>で囲まれていれば別ですが、<form>は入れないということです。
kalzeさん有難う御座います。
大変勉強になりました!!
すみません、もう1つ問題があるのですが・・・、というか書くのを忘れていました・・・。
この同様の記述が複数ある場合はどうすればよいのでしょうか??
同じテーブル内に、先ほどと商品は違えど同じフォームが10個くらいある場合は、全体で囲んでしまうと混乱がおきそうな気がするのですが・・・。
やはりこういった場合は1つの<td>ないに1つずつ記述するほかすべは無いのでしょうか・・・?
何度もすみませんが、宜しくお願いいたします!!!
No.4
- 回答日時:
複数ある場合どうするか、ですか。
#3様がかかれているように、入れ子にするとか。
もしくはtableは使わないで表っぽく表示されるようにCSS使うとか。
他には、submitのボタンで識別するとか。
1ページに羅列しないとか。
(構成自体変わりますけど)
チェックボックスやラジオボタンで商品を選択させて、submitはひとつにするとか。
まぁこればっかりはサイト全体にも関わってくるので、仕様がわからないとなんともいえないですね。
No.3
- 回答日時:
とりあえず・・・。
要素は1つのまとまりです。
開始タグだけで終了タグがもとから無いもの,開始タグ終了タグ共にあるが終了タグは省略可能なもの,開始タグ終了タグ共にあり共に省略不可のものといろいろあります。
TD の下で FORM を記述するとしたら、それは TD 要素の配下に FORM 要素を置くという事です。TD の終了タグが現れたらそこで FORM も終り。しかも FORM は終了タグの省略は不可なので記述ミスありとなります。
ここで問題は、それを解釈したツールがどう対応するか。誤りを補正する動きが偶然に作成者の望む形だと見落としの可能性も・・・。
次に別の TD 要素下で FORM の終了タグが現れると・・・。ここで TD は終了タグは省略可能という事で FORM の終了タグの前に TD は終了タグが省略されているという解釈がされる可能性が・・・。という事でテーブルが崩れます・・・・・。
という事で改めて、各要素は1つづつのまとまりであると。
では FORM の各部品(inputなど)を複数要素に分けたい(別々の TD 配下としたい)場合はどうするか。
それらを含む要素とすれば良い。という事で TABLE の外に FORM の開始タグと終了タグを記述。
尚、1つの TABLE で複数の FORM が存在し類似の場合は・・・。TABLE を分割,入れ子にしてごまかすとか・・・。
No.2
- 回答日時:
おかしいのはタグが入れ子になっていないところです。
HTMLでは
<element1><element2></element2></element1>
のように入れ子にすることはできますが、
<element1><element2></element1></element2>
のように互い違いにすることはできません。
ブラウザは互い違いでも何とか(強引に)解釈しようとしますから
たぶんそれで変な表示になったのでしょう。
入れ子にしようとするとformの開始と終了はtdの外側になりますが
trの中にはth,td以外を置くことはできませんから、
#1さんの言うとおりtable全体をformで囲むのがよいでしょうね。
有難う御座います。
やはり同じような記述が複数ある場合は別の方法をとったほうが良いのでしょうか???
商品が複数あるので困っています・・・。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<td>中の文字列に<p>は必要?
-
一部の文字列の右寄せについて
-
HTML 表の上に文字がきてしま...
-
文章が読みやすいのは?
-
ビットマップ(bmp)形式で背景...
-
画像のペイントについて
-
質問です。 K-POPアイドルの公...
-
上司から10メガバイトの画像...
-
デジカメの写真をパソコンにキ...
-
FC2ブログの記事内に動画ファイ...
-
Inkscapeでインポート...
-
1Mbyteピッタリの画像ファイル...
-
直リンクの貼り方
-
アイコンとバナーの違いについて
-
デジカメで撮った集合写真に写...
-
フォントの文字を縁取る方法
-
画像サイズの変更の仕方教えて...
-
下記サイトの禁止タグをアメブ...
-
GIFをJPEGに変換出来ますか?
-
編集が出来ません(JPEGフ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<td>中の文字列に<p>は必要?
-
HTML 表の上に文字がきてしま...
-
文章が読みやすいのは?
-
こんな<form>って、基本的にあ...
-
一部の文字列の右寄せについて
-
ビットマップ(bmp)形式で背景...
-
編集が出来ません(JPEGフ...
-
FC2ブログで、画像の画面中...
-
tiffファイルをトリミングして...
-
フル画像に拡大できるリンクが...
-
上司から10メガバイトの画像...
-
アイコンとバナーの違いについて
-
質問です。 K-POPアイドルの公...
-
1Mbyteピッタリの画像ファイル...
-
お札画像の素材集を加工してWeb...
-
画像のペイントについて
-
デジカメで撮った集合写真に写...
-
画像の背景の透明部分だけを広...
-
アメブロの画像アップロードに...
-
YYMMDD
おすすめ情報