2011-06-15 84 views
0

任何帮助,积极感激地收到jQuery UI的标签 - 标签仅与内容

我试图让一个标签被激活(“点击”)仅当有内容出现在专区内。内容将来自php sql查询。

在它最简单的形式

<script> 
$(function() { 
$("#tabs").tabs(); 
}); 
</script> 

<div id="tabs"> 
<ul> 
<li><a href="#tabs-1">Hello</a></li> 
<li><a href="#tabs-2">Goodbye</a></li> 
</ul> 

<div id="tabs-1"> 
if Query returned result, echo results, tabs-1 active 
</div> 

<div id="tabs-2"> 
if Query returned 0 results, nothing to echo tabs-2 inactive 
</div> 
</div> 

我猜的有效/无效部分不必根据查询结果 - 在div的股利或尺寸的字符数都可以是指标我可以使用看看div是否为空。

我知道很少的JavaScript,所以如果有一个解决方案在那里是有可能,你可以把它解释为你讲一个小的孩子......

事先非常感谢,我希望我的问题是足够清楚。

回答

0

您可以拦截使用select标签更改事件,喜欢的东西:

$("#tabs").tabs({ 
    select: function(event, ui) { 
     if ($(ui.panel).html().length < 1) { 
      alert('no content!'); 
      return false; 
     } 
    } 
}); 
+0

感谢您的输入,虽然我并没有真正得到它在我需要的方式工作。我manged基于记录的数量凑齐东西从查询返回 如果(artist_no_gigs == 0){ \t $(函数(){ \t \t \t $( “#artist_tabs”)。标签({禁用:[1]}); \t \t \t}); }虽然这不起作用,如果我想禁用多个选项卡 – chris 2011-06-16 16:22:01