我正在使用 jtable jquery 插件,并让给定选项卡的所有内容都正常工作。但是,当我单击不同的选项卡时,jquery 或 jtable 似乎缓存了它发送到服务器的 URL,因此它得到了相同的响应。
我正在尝试将动态 tabId 传递给 URL,以便它为给定选项卡加载适当的内容。但它会不断发送第一个被点击的标签。
使用如下所示的代码,当我点击 Tab1 时,我希望它点击 url 比较/tab1,当我点击 tab2 时,我希望看到 url 比较/tab2。但是,如果它继续发送比较/tab1(查看调试 chrome 中的网络和服务器上的访问日志)。当我将警报放入 click 函数时,tabId 正确显示。
<div id="myTab">
<ul>
<li><a id="tab1" class="tab" href="#dataTable">Tab1</a></li>
<li><a id="tab2" class="tab" href="#dataTable">Tab2</a></li>
<li><a id="tab3" class="tab" href="#dataTable">Tab3</a></li>
</ul>
<div id="dataTable"></div>
</div>
Javascript:
$(".tab").on("click", function(event) {
var tabId = $(this).attr("id");
$('#dataTable').jtable({
title: 'My Table',
actions: {
listAction: 'comparison/' + tabId
},
fields: {
column1: {
key: true,
list: true,
title: 'Name'
},
column2: {
title: 'Column1',
width: '30%'
},
column3: {
title: 'Column2',
width: '20%'
},
column4: {
title: 'Column3',
width: '30%'
}
}
});
$('#dataTable').jtable('load');
});
任何帮助将不胜感激。
问候锡