我工作的一个项目,大量使用jQuery的标签和阿贾克斯。 将数据加载到所述翼片本身很简单,但需要在选项卡中的数据,以由一个选择框,它位于凸片格外进行过滤。
这里是我的问题开始的地方。 比方说,我的标签,使一个Ajax调用URL“tab1.html。” jQuery的标签改变这个目标变成散列值类似“#用户界面的选项卡-10,”但我可以通过下面的代码获得的原始网址:
$("#tabs").tabs({
select: function(event,ui) {
var url = $.data(ui.tab, 'load.tabs');
...do stuff with url
}
});
但我似乎无法访问此事件外呼的ui.tab对象。 所以我的选择框更改事件最终看起来是这样的:
var urls = {
0 : "tab1.html",
1 : "tab2.html",
2 : "tab3.html"
}
$('#selectBox').change(function(){
var tabs = $("#tabs").tabs();
var id = $('#selectBox').attr("selectedIndex");
var selectedTab = tabs("option", "selected");
var newUrl = urls[selectedTab] + "?id=" + id;
tabs("url", selectedTab, newUrl);
tabs("load", selectedTab);
});
我的问题是哈希映射。 我并不需要它,它复制的信息,我已经编入标签div的本身。
<div id="tabs">
<ul>
<li><a href="tab1.html">tab1</a></li>
<li><a href="tab2.html">tab2</a></li>
<li><a href="tab3.html">tab3</a></li>
</ul>
</div>
我已经耗尽了的文档,并在Firebug DOM树无济于事。 我如何可以从标签的事件之外取得的HREF任何想法?
我使用jQuery UI的版本1.7.2。 Muchos格拉西亚斯提前。 你们是最棒的。