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スクリプトが動作していることを知っているので、警告ウィンドウを起動します。私はデータがなぜ私の意見でデータテーブルオブジェクトからフェッチされていないのかと思うようです。
への変更をデータテーブル出力を割り当てていません – Rahul