我正在使用JQgrid来显示数据表。当我单击表格中的一行图标时,它会正确显示一个包含新表格的引导框。我希望行中有可以点击的id,通过onclick触发另一个函数。我只是试图获得一个警报测试,但它似乎没有像我超出范围?是否有可能从jqgrid内部的bootbox内容中获取onclick事件?引导框工作正常,但我无法通过单击引导框表中的ID来触发onclick事件。
grid.jqGrid({
...
onCellSelect: function (rowid, iCol, cellcontent, e) {
// if column 8 is clicked...
if(iCol==8){
$('[id^=price-]').click(function(){
alert('click');
});
bootbox.dialog({
title: 'Popup Title',
message: '<table><tr><td><span class="label label-lg label-info arrowed" id="price-1234">Match Price</span></td></tr></table></div>',
});
}
}
...
});
答案 0 :(得分:2)
您可以使用jQuery on来侦听尚未在DOM中的元素的事件。
$(function(){
//Handle click events from your selector
$(document.body).on("click", "[id^=price-]", function(event)
{
//Do your logic here.
});
});
通常,您希望确保将on处理程序放到最近的父级。但是在这种情况下,你无法控制bootbox放置html(它在正文中)的位置,所以你必须将一个处理程序附加到DOM的更高级别。