質問編集履歴

1 コードの見易さを改善しました

nakan

nakan score 7

2018/06/29 22:35  投稿

LaravelでjavascriptのaddEventListenerが動きません
laravelでwebアプリを作っているのですがaddEventListenerが機能しません。
ドットインストールを参考にconfirmで確認画面を出したいと思っています。
ちなみに初心者です。
HTMLはこんな感じです
<td>
```HTML
<td>
<a href="#" class="del" data-id="{{ $Item->id }}">
  削除
</a>
<form method="post" action="{{url('/product/delete')}}" id="form_{{$Item->id}}">
{{ csrf_field() }}
{{ method_field('delete') }}
<p>
  <input type="hidden" name="id" value="{{$Item->id}}">
</p>
</form>
</td>
```  
Javascriptはこんな感じです
```Javascript
(function() {
 'use strict';
 var cmds = document.getElementsByClassName('del');
 var i;
 for (i = 0; i < cmds.length; i++) {
   cmds[i].addEventListener('click', function(e) {
     e.preventDefault();
     if (confirm('are you sure?')) {
       document.getElementById('form_' + this.dataset.id).submit();
     }
   },false);
 }
})();
```  
 
管理者権限の設定でroleが5以上のユーザーがこの機能を使えるようにしています。
その機能が悪さをしているのでしょうか?
alermは書けばちゃんと表示されるので読み込めてないわけでは無さそうです。
alertは書けばちゃんと表示されるので読み込めてないわけでは無さそうです。
コンソールにもエラーメッセージはありません。
console.logには多くのエレメントがありすぎてよく分かりません。  
ブラウザの設定でjavascriptは有効にしています。
他にも設定しなければならないことも有るかもしれませんが。
どうかありそうな見落としを教えてください。
よろしく御願いします。
  • Laravel 5

    3010 questions

    Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る