現役システムエンジニアの備忘録

技術スキルや用語などの記録を残していきます

Form(フォーム操作)

【JavaScript入門】form.actionの実務テクニック|相対パス・method・submit()の注意点まとめ

投稿日:2019年6月1日 更新日:

この記事で分かること

  • form.action を実務で使う際の注意点
  • 相対パス・絶対パスの違いと動作の変化
  • methodGET/POST)との関係
  • form.submit() の挙動と onsubmit の違い
  • API 連携や複数フォームでの応用テクニック

form.action は、フォームの送信先 URL を参照・設定するためのプロパティです。
基礎として「送信先の取得・設定」を理解したら、次は実務でつまずきやすい応用ポイントを押さえておく必要があります。

この記事では、相対パス・methodsubmit() の挙動など、実務で必ず役立つ応用テクニックをまとめて解説します。



相対パスと絶対パスで動作が変わる

form.action に設定する URL は、相対パスか絶対パスかで動作が変わります。

相対パスの例


form.action = "send.php";

→ 現在のページを基準にしたパスになります。

絶対パスの例


form.action = "https://example.com/api/send";

→ どのページからでも同じ URL に送信されます。

実務では、環境(本番・開発)によって送信先が変わるため、絶対パスを使うケースが多いです。



methodGET/POST)との関係

form.action は送信先 URL を決めるだけで、送信方法(GET/POST)は method が担当します。

  • GETURL にデータを付与して送信
  • POSTHTTP ボディにデータを入れて送信

送信先を切り替える場合、method も合わせて変更する必要があるケースがあります。


form.action = "api/send";
form.method = "POST";

→ API 連携では POST を使うことが多いです。

form.submit()onsubmit を通らない

JavaScript から form.submit() を実行すると、onsubmit が発火しません


form.submit(); // onsubmit をスキップして送信される

そのため、送信前に action を変更したい場合は、onsubmit 内で処理するのが安全です。

HTML と DOM の action は別物

JavaScript で action を変更すると、HTML ソースには反映されません。

  • HTML:ページ読み込み時の初期値
  • DOM:JavaScript によって変更された値

開発者ツールで確認すると違いが分かります。

API 連携で送信先を切り替える

問い合わせ内容によって API のエンドポイントを切り替えるなど、実務では複数の送信先を使い分けることがあります。


if (type === "support") {
  form.action = "/api/support";
} else {
  form.action = "/api/contact";
}

→ 条件分岐で柔軟に切り替えられます。

セキュリティ上の注意点

  • ユーザー入力をそのまま action に使わない
  • 外部サイトへの送信は意図したものか確認する
  • HTTPS を使用する

特に、ユーザー入力を action に直接入れるのは危険なので避けましょう。

JavaScript 初心者におすすめの学習書籍

書籍で学ぶのが向いている人

  • 紙の本で体系的に学びたい
  • ネット記事だけだと情報が断片的に感じる
  • フォーム送信や DOM の基礎をしっかり固めたい

form.action の応用(相対パス・methodsubmit() など)を理解するには、
DOM 操作・イベント処理・HTTP の基礎が欠かせません。
書籍ではこれらを体系的に順序立てて学べるため、実務で困らない基礎力が身につきます。

いちばんやさしい JavaScript の教本

写真や図が多く、手を動かしながら学べる初心者向けの入門書です。
DOM 操作・イベント処理・フォームの基本が丁寧に解説されており、
form.action の応用理解にもつながります。

この本で解決できること:

  • フォームと入力欄の仕組みを視覚的に理解できる
  • DOM を使った属性操作(action など)の基礎が分かる
  • 実際に動くサンプルで学べるため応用理解がスムーズ

いちばんやさしい JavaScript の教本

確かな力が身につく JavaScript「超」入門

JavaScriptの基礎を体系的に学びたい方に向いている入門書です。
フォーム送信・バリデーション・イベント処理など、実務で必要な基礎力がしっかり身につきます。

この本で解決できること:

  • form.action を含むフォーム制御の仕組みを体系的に理解できる
  • methodGET/POST)や相対パスなど実務で必要な基礎が身につく
  • 現代的な JavaScript の書き方をまとめて習得

確かな力が身につく JavaScript「超」入門

動画で理解を深めたい方へ(Udemy講座)

form.action の応用を理解するには、DOM 操作・イベント処理・HTTP の基礎が欠かせません。
Udemy ではこれらを実際の動きとともに学べるため、応用理解が一気に進みます。

初心者のためのJavaScript 完全入門

JavaScriptの基礎を体系的に学べる人気講座です。
フォーム送信・イベント処理・DOM の基礎が丁寧に扱われており、
form.action の応用理解にも役立ちます。

この講座で解決できること:

  • フォーム送信の流れを視覚的に理解できる
  • methodaction の動作を動画で確認できる
  • 初心者がつまずきやすいポイントを丁寧に解説

初心者のためのJavaScript 完全入門(Udemy)

超JavaScript 完全ガイド 2026

基礎から応用まで幅広く学べる講座で、form.action の実務的な使い方を深く理解したい方に最適です。

この講座で解決できること:

  • 相対パス・絶対パスの違いを実例で理解できる
  • form.submit()onsubmit の挙動の違いを学べる
  • 実務で使える DOM 操作をまとめて習得

超JavaScript 完全ガイド 2026(Udemy)

体系的に学びたい方へ(スクールという選択肢)

独学の限界を感じやすいポイント

  • 相対パス・method などの基礎が曖昧なまま進んでしまう
  • form.submit() の挙動など実務的な部分でつまずきやすい
  • 複数フォームの設計や API 連携が難しい
  • コードレビューを受ける機会がない

スクールでは、プロの講師が学習ロードマップを作成し、
form.action の応用に必要な DOM 操作・HTTP の基礎を
丁寧にサポートしてくれます。

無料相談で得られるメリット

  • あなたのレベルに合わせた学習計画を作成
  • 独学でつまずきやすい応用ポイントを事前に把握
  • 学習方法の改善点をプロがアドバイス
  • エンジニア転職を視野に入れたキャリア相談も可能

JavaScript を効率よく学びたい方には、未経験からエンジニアを目指せる
DMM WEBCAMP の学習コースも選択肢のひとつです。

DMM WEBCAMP 学習コース(無料相談はこちら)



form.action の応用に関するよくある質問(FAQ)

Q1

相対パスと絶対パスはどちらを使うべき?

A

本番・開発環境で送信先が変わる場合は絶対パスが安全です。ページ構造が安定している場合は相対パスでも問題ありません。

Q2

form.submit() を使うと onsubmit が動かないのはなぜ?

A

form.submit() はブラウザの送信処理を直接呼び出すため、イベントを経由しないからです。

Q3

action を動的に変更すると SEO に影響はある?

A

フォーム送信は SEO に直接影響しません。ただし外部サイトに送信する場合はセキュリティに注意が必要です。

Q4

ユーザー入力を action に使ってもいい?

A

セキュリティ上のリスクが高いため推奨されません。必ずサーバー側で安全な URL を決定してください。



まとめ

  • form.action は実務で頻繁に使う重要なプロパティ
  • 相対パス・絶対パスで動作が変わる点に注意
  • methodGET/POST)と合わせて使うケースが多い
  • form.submit()onsubmit を通らないため注意が必要
  • API 連携や複数フォームでの送信先切り替えに応用できる



関連記事

【JavaScript入門】form.elementsの使い方|エレメント参照・種類判別・lengthの基本を解説

JavaScriptのelementsとは?フォーム内のエレメント参照方法を初心者向けに解説 form.elements は、フォーム内に含まれるすべてのエレメント(input・select・text …

【JavaScript入門】click・blur・focus・selectの使い方|入力欄の操作を自動化する方法

JavaScriptのclick・blur・focus・selectとは?入力欄の操作を自動化する方法を解説 click()・blur()・focus()・select() は、 フォーム要素に対して …

【JavaScript入門】form.targetの使い方|送信結果を表示するウィンドウ・フレームを指定する方法

JavaScriptのform.targetとは?送信結果を表示するウィンドウ・フレームを指定する方法 form.target は、フォーム送信後の結果をどのウィンドウ(またはフレーム)に表示するかを …

【JavaScript入門】selectedIndexの使い方|セレクトメニューで選択された項目番号を取得する方法

JavaScriptのselectedIndexとは?セレクトメニューで選択された項目番号を取得する方法 selectedIndex は、セレクトメニュー(<select>)で現在選択され …

【JavaScript入門】form.actionとは?送信先URLの取得・設定を基礎からわかりやすく解説

この記事で分かること form.action の基本的な役割 送信先 URL の取得方法と設定方法 HTML の action 属性との違い 最低限知っておくべきフォーム送信の仕組み form.act …

このブログは Xserver 上の WordPress で運用しています。
表示速度が速く、安定しているのでブログ初心者にもおすすめです。

レンタルサーバー エックスサーバー

-Form(フォーム操作)

執筆者: