Javascript jQuery UI选项卡:在选项卡中加载链接/重新加载整个页面
我正在为我的页面使用jQuery UI(1.10.2)选项卡。我使用此代码加载当前选项卡内的所有链接Javascript jQuery UI选项卡:在选项卡中加载链接/重新加载整个页面,javascript,jquery,jquery-ui,tabs,Javascript,Jquery,Jquery Ui,Tabs,我正在为我的页面使用jQuery UI(1.10.2)选项卡。我使用此代码加载当前选项卡内的所有链接 <script type="text/javascript"> $(function() { $("#assetinfo_tabs").tabs({ ajaxOptions: { error: function( xhr, status, index, anchor ) { $( anchor.hash
<script type="text/javascript">
$(function() {
$("#assetinfo_tabs").tabs({
ajaxOptions: {
error: function( xhr, status, index, anchor ) {
$( anchor.hash ).html("Error reading content. :(" );
}
},
spinner: "<em>Loading</em> <img src='images/ajax-loader.gif'>",
load: function(event, ui) {
$(ui.panel).delegate('a', 'click', function(event) {
$(ui.panel).load(this.href);
event.preventDefault();
});
}
});
});
</script>
$(函数(){
$(“资产信息选项卡”).tabs({
ajaxOptions:{
错误:函数(xhr、状态、索引、锚定){
$(anchor.hash).html(“读取内容时出错:”;
}
},
微调器:“加载”,
加载:函数(事件、用户界面){
$(ui.panel).delegate('a','click',函数(事件){
$(ui.panel).load(this.href);
event.preventDefault();
});
}
});
});
现在,我希望能够添加一些方法来“标记”链接,它们将在单击时重新加载整个页面,而不仅仅是在选项卡内加载。我认为应该可以通过向链接添加一个类,并让上面的加载段忽略该类的所有链接,但我无法让它工作
<script type="text/javascript">
$(function() {
$("#assetinfo_tabs").tabs({
ajaxOptions: {
error: function( xhr, status, index, anchor ) {
$( anchor.hash ).html("Error reading content. :(" );
}
},
spinner: "<em>Loading</em> <img src='images/ajax-loader.gif'>",
load: function(event, ui) {
$(ui.panel).delegate('a', 'click', function(event) {
if (!$(this).hasClass('reload')) {
$(ui.panel).load(this.href);
event.preventDefault();
}
});
}
});
});
</script>
$(函数(){
$(“资产信息选项卡”).tabs({
ajaxOptions:{
错误:函数(xhr、状态、索引、锚定){
$(anchor.hash).html(“读取内容时出错:”;
}
},
微调器:“加载”,
加载:函数(事件、用户界面){
$(ui.panel).delegate('a','click',函数(事件){
if(!$(this).hasClass('reload')){
$(ui.panel).load(this.href);
event.preventDefault();
}
});
}
});
});
我会说它不起作用,因为$(此)
实际上是指事件,而不是指选项卡。尝试使用ui.index获取单击选项卡的索引,抓取该对象并检查它是否具有相关类。我会说它不起作用,因为$(此)
实际上指的是事件,而不是选项卡。请尝试使用ui.index获取已单击选项卡的索引,抓取该对象并检查其是否具有相关类。我找到了它!而不是在“单击”时触发。tablink click允许我将该类添加到要在选项卡中打开的链接
这与我想要的正好相反,但我接受了:)
$(函数(){
$(“资产信息选项卡”).tabs({
ajaxOptions:{
错误:函数(xhr、状态、索引、锚定){
$(anchor.hash).html(“读取内容时出错:”;
}
},
微调器:“加载”,
加载:函数(事件、用户界面){
$(ui.panel).delegate('.tablink',click',函数(事件){
$(ui.panel).load(this.href);
event.preventDefault();
});
}
});
});
我找到了答案!我没有在“单击”时触发,而是将其更改为“.tablink click”,这允许我将此类添加到我希望在选项卡中打开的链接中
这与我想要的正好相反,但我接受了:)
$(函数(){
$(“资产信息选项卡”).tabs({
ajaxOptions:{
错误:函数(xhr、状态、索引、锚定){
$(anchor.hash).html(“读取内容时出错:”;
}
},
微调器:“加载”,
加载:函数(事件、用户界面){
$(ui.panel).delegate('.tablink',click',函数(事件){
$(ui.panel).load(this.href);
event.preventDefault();
});
}
});
});
由于事件是一个正在单击的链接,而“this”用于获取href,那么它不应该也能够获取该链接/事件的类吗?另外,我不知道我们是否在谈论同样的事情?如果我想重新加载整个页面,我看不到选项卡索引有什么关系?因为事件是一个正在单击的链接,而“this”是用来获取href的,难道它不应该也能够获取该链接/事件的类吗?另外,我不知道我们是否在谈论同一件事?如果我想重新加载整个页面,我不知道选项卡索引是如何相关的?
<script type="text/javascript">
$(function() {
$("#assetinfo_tabs").tabs({
ajaxOptions: {
error: function( xhr, status, index, anchor ) {
$( anchor.hash ).html("Error reading content. :(" );
}
},
spinner: "<em>Loading</em> <img src='images/ajax-loader.gif'>",
load: function(event, ui) {
$(ui.panel).delegate('.tablink', 'click', function(event) {
$(ui.panel).load(this.href);
event.preventDefault();
});
}
});
});
</script>