2017-06-23 14 views
0

私は次のJade Templateを持っています。各行でレンダリングされたボタンをクリックしたときにJavaScriptを起動しようとしています。私はDataTablesとJadeを初めて使っているので、私がドキュメントに従っているのに私が間違っていることがわかりません。これはDataTableのデータを参照しているためです。jadeテンプレートでdatatableの行ボタンが機能しない

html 
    head 
     title= 'Feed List' 
     <meta charset="utf-8"> 
     <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
     <meta name="viewport" content="width=device-width, initial-scale=1"> 
     link(href="//maxcdn.bootstrapcdn.com/bootswatch/3.3.0/flatly/bootstrap.min.css", rel="stylesheet") 
     link(href="//cdn.datatables.net/v/dt/dt-1.10.15/datatables.min.css", rel="stylesheet") 

body 
    div.container.jumbotron 
     h1.header NSE Announcements in last 30 Days 
     h3.header Top Annoucements by corporates listed on NSE 
    div.container 
     script(src='//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js') 
     script(src='//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js') 
     script(src='//cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js') 
     script(src='//cdn.datatables.net/plug-ins/1.10.15/sorting/datetime-moment.js') 
     div#dataToShow 
      table#resultTable.table.table-hover 
       thead 
        tr 
         th='Ticker' 
         th='Link' 
         th='Date' 
         th='Description' 
         th='Click' 
        tbody 
         for feed in feedList 
          tr 
           td= feed.ticker 
           td 
            a(href=feed.attachmentLink) #{feed.ticker} 
           td= moment(feed.dateAdded).format('DD-MM-YYYY h:mm:ss a') 
           td= feed.purposeText 
           td 
script.  
    $(document).ready(function() { 
     $('#resultTable').DataTable({ 
      "order": [[ 3, "desc" ]], 
      "columnDefs" : [{"targets":3, "type":"date"}, 
        {"targets":-1,"data": null,"defaultContent": "<button>Click!</button>"}] 
      }); 
     $('#resultTable tbody').on('click', 'button', function() { 
      var data = table.row($(this).parents('tr')).data(); 
      alert("Ticker is " + data[1]); 
      }); 
    }); 

私は

var data = table.row($(this).parents('tr')).data(); 

ザ・を削除した場合、それは私がJavaスクリプトが動作していることを知っているので、警告ウィンドウを起動します。私はデータがなぜ私の意見でデータテーブルオブジェクトからフェッチされていないのかと思うようです。

答えて

1

それが答えを受け入れ、upvoteしてください働いていた場合は、任意の変数に

var table = $('#resultTable').DataTable({ 
      "order": [[ 3, "desc" ]], 
      "columnDefs" : [{"targets":3, "type":"date"}, 
        {"targets":-1,"data": null,"defaultContent": "<button>Click!</button>"}] 
      }); 

Source

+0

への変更をデータテーブル出力を割り当てていません – Rahul

関連する問題