これは奇妙な質問のように聞こえますが、これをより明確に説明しようとします。action
フォーム要素の属性に含まれるファイルは、フォームに入力されたデータを処理するファイルの場所であることを知っています。
では、属性に HTML ファイルがaction
あり、そのデータを別のファイルで処理することに意味があるのでしょうか? これは可能ですか?
HTMLファイルだけではHTTPリクエストのすべての部分を処理できないため、役に立たない。HTMLは、ヘッダーと本文のデータを解析できません。そして、データが渡される場所は他にありません。そのため、HTMLは渡されたデータを処理できません。
.html
ただし、最初に、拡張子が付いたリンクが実際にhtmlファイルであることを確認してください。.html
拡張機能に隠されたサーバー側スクリプトではありません!
ノート。JavascriptはGETパラメータの一部を解析できます!この回答を参照してください。これは、JavascriptがGETデータを解析する方法を示しています。そのため、フォームでGETメソッドを使用し、プレーンJSを使用してアプリケーションを作成して解析できます。
はい、可能です。たとえば、フォームのアクション属性から指しているファイルに別のファイルを含めることができます。しかし、それを HTML ファイルにしたいので、行き詰まっています (HTML ファイルを相互に含めることはできません)。しかし...フォームを処理したい場合は、PHPやASPのようなサーバー側のコードを実行したいでしょう。オプションが必要です。1. HTML ファイルの代わりに PHP ファイルを指定するか、何らかの URL リライトを使用して (.htacess ファイルなどを介して)、html ファイルをサーバー側のスクリプ ファイルにリダイレクトします。
このaction
属性は、提供されたフォーム データとともに HTTP POST リクエストが送信される場所です。
action
このデータを処理し、必要な処理を行うのは URL ページ次第です。
あるファイルのデータを処理し、別のファイルにリダイレクトする場合は、データを処理する HTML に投稿し、そのページで 3 番目のページに自動リダイレクトすることができます。
例えば:
Page1.html:
<form action="Page2.html">
Page2.html:
データを処理してから、何らかの方法で自動的にリダイレクトします。
<script type="text/javascript">
window.location = "Page3.html";
</script>
Page3.html:
やっと3ページ目に到着。
ユーザーにとって、このプロセスは一見無意味であり、データ処理は で処理されますが、Page1.html
直接 からに移動したように見えます。Page3.html
Page2.html
action 属性に html ファイルを含むフォームをいくつか見たので、別の場所でデータを処理できるかどうか疑問に思っていました。
おそらく、名前だけの静的な HTML ファイルでした。URL は、背後にあるファイルの種類を示す信頼できる指標ではありません。フォーム ターゲットは、おそらく、データを処理する .html 拡張子の背後に「隠されている」サーバー側スクリプトでした。
属性で呼び出すファイル以外の場所にデータを送信したい場合は、action
おそらく JavaScript でそれを行うと思います。その場合、JavaScript を使用してユーザーを新しい HTML ページに送ることもできます。
この質問に対する他の回答は有効であり、機能しますが、アイデア全体自体は少し無意味です。だから私の答えは:
はい。
無駄だ。