Jquery 重新触发引导选项卡更改事件
我有一个屏幕,如下所示: 选项卡通过选项卡更改事件上的ajax调用加载。页面顶部的网格需要能够触发特定选项卡的显示事件(因为它提供了id等),但它只适用于单击的第一个项目,就像阻止第二次单击一样 简化代码Jquery 重新触发引导选项卡更改事件,jquery,twitter-bootstrap,Jquery,Twitter Bootstrap,我有一个屏幕,如下所示: 选项卡通过选项卡更改事件上的ajax调用加载。页面顶部的网格需要能够触发特定选项卡的显示事件(因为它提供了id等),但它只适用于单击的第一个项目,就像阻止第二次单击一样 简化代码 $(function() { var self = this; self.agencyId = -1; self.SwitchView = function(partialViewName, targetDiv) { alert('Switchi
$(function() {
var self = this;
self.agencyId = -1;
self.SwitchView = function(partialViewName, targetDiv) {
alert('Switching To ' + partialViewName)
};
$("#AgencyTabs").tab();
$("#AgencyTabs").on("show", function(e) {
var target = "#partialContainer";
var partialViewName = $(e.target).data("src");
self.SwitchView(partialViewName, target);
$("#AgencyTabs").tab();
});
$('#toolbar').on('click', '.action-button', function() {
var iGrid = this;
self.agencyId = $(iGrid).data('rowid');
self.currTab = "Details";
$('#AgencyTabs a[data-src="' + self.currTab + '"]').tab('show');
return false;
});
$('#AgencyTabs a[data-src="Parameters"]').tab('show');
});
我设置此选项是为了演示我的问题
据我所知,问题是当选项卡已经被选中时,SwitchView
没有被执行。此编辑通过将函数执行从onshow
事件移动到onclick
事件来修复此问题
编辑:
现在也在“查看”按钮上执行SwitchView
。但是,它并不专门触发onshow
事件,它只是调用函数
编辑到$(“#工具栏”)。在('单击',);:
据我所知,问题是当选项卡已经被选中时,SwitchView
没有被执行。此编辑通过将函数执行从onshow
事件移动到onclick
事件来修复此问题
编辑:
现在也在“查看”按钮上执行SwitchView
。但是,它并不专门触发onshow
事件,它只是调用函数
编辑到$(“#工具栏”)。在('单击',);:
我有一个临时的解决办法,例如有一个占位符标签,我可以交换到。。。但这感觉像一个黑客。所以不确定这是不是最好的way@RohanBüchner:我编辑了一些代码,从“查看”按钮执行函数。这就是你所需要的吗?看起来它很管用,只是需要实现它。谢谢:)没问题,很高兴能帮上忙。我有一个临时解决办法,比如有一个占位符标签,我可以切换到。。。但这感觉像一个黑客。所以不确定这是不是最好的way@RohanBüchner:我编辑了一些代码,从“查看”按钮执行函数。这就是你所需要的吗?看起来它很管用,只是需要实现它。谢谢:)没问题,很高兴能帮上忙。
$("#AgencyTabs").on("show", function(e) {
var target = "#partialContainer";
var partialViewName = $(e.target).data("src");
//self.SwitchView(partialViewName, target);
$("#AgencyTabs").tab();
});
$("#AgencyTabs").on("click", function(e) {
self.SwitchView($(e.target).data("src"), e.target);
});
$('#toolbar').on('click', '.action-button', function() {
var iGrid = this;
self.agencyId = $(iGrid).data('rowid');
self.currTab = "Details";
self.targeted = $('#AgencyTabs a[data-src="' + self.currTab + '"]')
self.SwitchView(self.currTab, self.targeted);
self.targeted.tab('show');
return false;
});