icon
icon

JavaScriptでボタンを押した際に指定したリンクへ飛ばす処理の実装方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaScriptでボタンを押した際に指定したリンクへ飛ばす処理の実装方法について解説しています。最初に、addEventListenerを使ってボタンを押した際に実行する処理を書く方法を説明します。次にlocation.replaceでリンク先を指定し、処理の実装を行います。サンプルコードで全体の動きを見てみましょう。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

JavaScriptでボタンを押した際に指定したリンクへ飛ばす処理の実装方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

そもそもJavaScriptについてよく分からないという方は、JavaScriptとは何なのかについて解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプJavaScript/jQuery講座の内容をもとにしています。

 

田島悠介

今回は、JavaScriptに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

ボタンを押した際に指定したリンクへ飛ばす処理の実装方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

ボタンを押した際に実行する処理を書く方法

一般的には、aタグのhref属性を用いて、リンク先へ画面を遷移させることが実現できますが、aタグを使用する方法以外での実現方法として、JavaScriptでは、処理を加えて実現できます。

その処理の基礎として、以下のサンプルコードが「ボタンを押した際に実行する処理を書く方法」です。Documentオブジェクトに備わっているコールバック関数addEventListenerを使用します。

 

HTML

<p id="sample">ボタン</p>

 

JavaScript

document.getElementById("sample").addEventListener("click", function () {
  console.log("処理");
}, false);

 

実行結果

See the Pen
2020-05-20-sample07
by YOHEI INAI (@yohei_inai)
on CodePen.

 

[PR] フロントエンドで副業する学習方法を動画で公開中

ボタンを押した際に指定したリンクへ飛ばす方法

関数location.replaceの引数に、リンク先を指定します。

 

JavaScript

location.replace("https://techacademy.jp/");

 

実際に書いてみよう

以下、先ほどの「ボタンを押した際に実行する処理を書く方法」に指定したリンクへ画面遷移させる処理のサンプルコードです。

 

HTML

<p id="sample">ボタン</p>

 

JavaScirpt

document.getElementById("sample").addEventListener("click", function () {
  location.replace("https://techacademy.jp/");
}, false);

 

実行結果

See the Pen
2020-05-20-sample08
by YOHEI INAI (@yohei_inai)
on CodePen.

※CodePenでは、セキュリティ保護の都合上、結果を確認できない可能性があります。

 

まとめ

リンクを設定するだけなら、aタグを使用するだけでも十分です。わざわざJavaScriptのコードを記述する手間がかかりますが、システム開発では、実装の都合上、記述しなければならない場合もありますので、参考までに留めておきましょう。

 

監修してくれたメンター

井内洋平

TechAcademyの現役メンター。

元Web Developerで、趣味は貯金、節税対策、投資信託、株式投資、FXなど多岐にわたる。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

TechAcademyでは、初心者でもJavaScript・jQueryを使ったWebサービス公開を習得できるオンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。