質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
CoffeeScript

CoffeeScriptはプログラミング言語です。シンタックスシュガーの導入により、JavaScriptのコードに変換された後動作します。JavaScriptに比べ、可読性と簡潔性が向上しています。

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

1回答

670閲覧

Modalのキャンセルボタンが押された場合に確認したい

yasukun252

総合スコア34

CoffeeScript

CoffeeScriptはプログラミング言語です。シンタックスシュガーの導入により、JavaScriptのコードに変換された後動作します。JavaScriptに比べ、可読性と簡潔性が向上しています。

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2023/05/22 11:07

編集2023/05/22 18:06

実現したいこと

RailsとBootStrapを用いてWebアプリを開発しています。
data-confirm-modalというgemを用いてModalを実装しているのですが、Modalのキャンセルボタンが押された場合にconsole.logで確認したいです。

  • Modalのキャンセルボタンが押された場合にconsole.logで確認したい
  • CoffeeスクリプトとJQueryで実装したい

前提

以下のようなHTMLでModalは表示されたのですが、キャンセルボタンの取得方法が分かりません。

<div id="confirm-modal-02776012011640993" class="modal false fade show" tabindex="-1" role="dialog" aria-labelledby="confirm-modal-02776012011640993Label" style="z-index: 1051; display: block;"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 id="confirm-modal-02776012011640993Label" class="modal-title">ユーザー情報更新の確認</h5> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> </div> <div class="modal-body"> <p>ユーザー情報を更新しますか?</p> </div> <div class="modal-footer"> <button class="btn cancel btn-default" data-dismiss="modal" aria-hidden="true">キャンセル</button>. # このキャンセルボタンが押された場合にconsole.logで確認したい <button class="btn commit btn-danger" data-dismiss="modal">更新する</button> </div> </div> </div> </div>

試したこと

以下のCoffeeスクリプトとJQueryでキャンセルボタンを押された場合、console.logを表示するように試したのですが、うまく動いていません。

$('.modal-dialog').children('modal-content').children('.modal-footer').children('.cancel').on 'click', (e) -> console.log("テスト")

CoffeeスクリプトとJQueryの実装方法が間違っていると思うのですが、どのように実装するとModalのキャンセルボタンが押された場合にconsole.logで確認できますか?

何卒、アドバイスなどよろしくお願いいたします。

補足情報(FW/ツールのバージョンなど)

Railsは5.2.8になります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

そろそろdialogを検討してもよいかもしれません

javascript

1<script> 2window.addEventListener('DOMContentLoaded', ()=>{ 3 btn.addEventListener('click',()=>{ 4 dlg.returnValue="cancel"; 5 dlg.showModal(); 6 }); 7 dlg.addEventListener('close',()=>{ 8 console.log(dlg.returnValue); 9 }); 10}); 11</script> 12<input type="button" value="modal open" id="btn"> 13<dialog id="dlg"> 14<form method="dialog"> 15<button type="submit" value="cancel">キャンセル</button> 16<button type="submit" value="ok">OK</button> 17</form> 18</dialog>

投稿2023/05/23 00:53

yambejp

総合スコア116487

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yasukun252

2023/05/23 01:24

ありがとうございます。 私が投稿した上の方法では、できないという事でしょうか?
yambejp

2023/05/23 01:27

$(document).on('click',".modal-dialog .cancel",function(){ console.log('キャンセル'); });
yasukun252

2023/05/23 04:10

ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問