[英]Cannot capture click event on Bootstrap accordian
我正在使用Bootstrap將數據綁定到表,然后嘗試捕獲一個手風琴show事件。 然后,我的計划是獲取div ID以調用ajax調用以獲取有關該項目的更多信息
到目前為止我沒有運氣,我的桌子是這樣建造的
<table class="table table-condensed" style="border-collapse:collapse;">
<thead>
<tr data-bind='foreach: headers'>
<td data-bind='click: $parent.sort, text: title'></td>
</tr>
</thead>
<tbody data-bind='foreach: packages'>
<tr data-toggle="collapse" class="accordion-toggle" data-bind="attr: {'data-target': '#collapse-' + msg_id }">
<td><button class='btn btn-success btn-6 btn-6g'
data-bind='text: msg_id'></button></td>
<td data-bind='text: subject'></td>
<td data-bind='text: sender_addr'></td>
<td data-bind='date: created'></td>
<td></td>
</tr>
<tr>
<td colspan="5" class="hiddenRow">
<div class="accordian-body collapse" data-bind="attr: { id: 'collapse-' + msg_id }">
opened
</div>
</td>
</tr>
</tbody>
</table>
我正在嘗試使用
$(document).ready(function() {
ko.applyBindings(new PackagesViewModel());
$(document).ready(function() {
$('div').on('show.bs.collapsing', function (e) {
alert("Event fired on " + e.currentTarget.id);
});
});
});
趕上活動。 頁面加載時,我的視圖模型是根據ajax請求構建的。 任何幫助都會很棒。
好的,我發現了為什么它不像小提琴那樣起作用。 jQuery試圖將事件綁定到尚未創建的表。 它在等待ajax調用,然后在敲除視圖模型以構建表。 當所有這些都發生時,我添加了一個按鈕來再次運行jQuery事件綁定,此方法起作用了,並且我在手風琴上捕獲了show事件。 所以我的解決方案是在ajax請求之后將jquery事件查找器移動到我的Java腳本中。 實際上,我將其放在AJAX請求的響應中。 我現在可以趕上活動了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.