- PR -

HTML Action先の変更について

1
投稿者投稿内容
GOLF@スポコン
常連さん
会議室デビュー日: 2003/11/26
投稿数: 30
投稿日時: 2004-03-04 17:40
いつもお世話になっています。
ゴルフです。

先日は皆様ありがとうございました。
先日の件は取り合えず乗り越えましたが、
一難さってまた一難って感じです。

HTMLのTYPEサブミットボタンでACTION先を変更するといったことです。

◇条件
@JavaScript/VBScriptを使用しない。
Aアクセシブルなページ
BGET/POSTを使用(なるべくGETでやりたい)

この画面は詳細検索の画面で、
ボタンは《検索》《リセット》《項目選択1》《項目選択2》
テキストエリア《キーワード入力》
チェックボックスが1つ
上記の様な画面です。

やりたいことは
検索ボタン押下時 ⇒ 結果一覧画面へ遷移
項目選択1ボタン押下時 ⇒ 項目選択1画面へ遷移
項目選択2ボタン押下時 ⇒ 項目選択2画面へ遷移
リセットボタン押下時 ⇒ 詳細検索画面リロード
です。

悩みは
キーワードに入力し、項目選択1ボタンで選択画面へ遷移し、
項目選択後、詳細検索画面へ戻った時に
キーワードの内容を保持したいのです。

Action先を任意に変更することができれば可能かと思っているのですが、
宜しくお願いします。

画面はASPで作成しています。

宜しくお願いします
He
大ベテラン
会議室デビュー日: 2002/12/18
投稿数: 141
投稿日時: 2004-03-05 03:29
ずっと気になっていたのですが、GOLF@スポコンさんの書き込みってASPについてですよね?
ご存知かもしれませんが、ここは『.NET』についての会議室です。

ASP.NETについての話題は普通に扱われますが、ASPの話題は通常出てきません。
「ASPの質問をするな」などというつもりは毛頭ございませんが、
せめてもっと上のほうの目立つところに、『ASP.NETではなく、ASPについての質問』と明記しておいたほうがよいでしょう。
でないと、ASP.NET的な回答がついてしまう可能性が非常に高いです。
今回の質問についても、文章を最後まで読まないとASPについての質問であることがわかりませんよね。

以上、ご協力いただけるとレスをつける方も、あとからこの情報を参照する方も助かると思います。



で、本題です。

案1)
画面レイアウトにもよるのですが、それぞれのボタンが、
<form action="A" ・・・><input type="submit" …></form>
<form action="B" ・・・><input type="submit" …></form>
<form action="C" ・・・><input type="submit" …></form>
って具合に、違うフォームにあるってのはダメですか?
# ちなみにこれは、ASP.NETではできない手法です。

案2)
ACTIONの値は固定で、サーバ側にわたってくる値からどのボタンが押されたかを取得し、任意の画面にリダイレクトする。

という感じでいかがでしょうか?
He
大ベテラン
会議室デビュー日: 2002/12/18
投稿数: 141
投稿日時: 2004-03-05 03:40
ん?いまもう一度読み直してみたら
悩みは
引用:
キーワードに入力し、項目選択1ボタンで選択画面へ遷移し、
項目選択後、詳細検索画面へ戻った時に
キーワードの内容を保持したいのです。

でしたね。
こういう場合は、Session変数に保存しておくか、Queryを持ちまわるのが妥当なところだと思います。

というか、なぜ
「Action先を任意に変更することができれば可能かと思っている」のかがわかりませんでした。


# 前のスレッドが書きっぱなしになってますね。
# どのようにして乗り越えたのかを報告しておいたほうが、皆さんのためになります。ご協力願います。
GOLF@スポコン
常連さん
会議室デビュー日: 2003/11/26
投稿数: 30
投稿日時: 2004-03-05 09:13
ありがとうございます。
#ご指摘もありがとうございます。
 参考になりました。


本題ですが、
Session変数も使用してはいけません。
その為POSTかGETを使用するしかないかと思っています。

⇒FORMを分けた場合、全てのボタンの遷移先は違いますが、
 渡すFORMの値は同じなのです。

⇒私が今のところ考えたのは、1枚ASPの空画面を作成し、
 その画面(Check画面)でどのボタンを押されたかを判断して
 URLリダイレクトするといった事です。
 
他にいい方法がありましたらアドバイスお願いします。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2004-03-05 12:07
GOLF@スポコンさん、こんにちは。

引用:

⇒私が今のところ考えたのは、1枚ASPの空画面を作成し、
 その画面(Check画面)でどのボタンを押されたかを判断して
 URLリダイレクトするといった事です。
 
他にいい方法がありましたらアドバイスお願いします。


では、クリックされたボタンを判別して、同一のASPページ内で表示する画面を変えてやる、というのはどうですか?
1つのファイルに複数の画面を押し込めると可読性が落ちる、という事であればファイルを分けて、条件によって<!-- #include file="xxxxxx" -->を書き換えてやるとか(←やったことないので可能かどうかは確かめて下さい)。
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2004-03-05 12:30
引用:

Action先を任意に変更することができれば可能かと思っているのですが、


Scriptを使わずに、Formの送出先を任意に変更するという事は出来ません。

HTMLをまともに勉強していれば、今回の条件ではボタンの名前からサーバ側で処理を変えるしかできないだろう事はすぐわかるので、.NetだASPだの言わずに、HTMLの基礎から勉強しなおす事をお奨めします。
(まぁ、受注受けちゃってから勉強ってのは・・・って思うけど)
1

スキルアップ/キャリアアップ(JOB@IT)