我正在尝试添加新选项卡(运行时)。addTab 函数:
function addTab(name,url,ctx) {
var tabs = $("#tabs");
tabs.find( ".ui-tabs-nav" ).append('<li><a href="tab-struktura.html">Nazwa</a> <span class="ui-icon ui-icon-close" role="presentation">Remove Tab</span></li>');
tabs.tabs("refresh");
}
选项卡的原始代码是:
<div id="tabs" class="tabs-bottom" style="background:url(/images/bg_document.png) top center no-repeat;">
<ul>
{foreach from=$master_structure item=item}
<li><a href="tab_index.html?ctx={$item->id_jed}">{$item->nazwa}</a></li>
<li><a href="tab_index.html?ctx={$item->id_jed}">{$item->nazwa}</a></li>
{/foreach}
</ul>
<div class="tabs-spacer" style="height:0px"></div>
</div>
(不使用参数,因为我将代码减少到确定值)
当我看到带有全新标签的新第二个标签栏时,我感到非常惊讶。
看起来所有的 <li> 标签都被转换为制表符....(来自 tab_index.html 的那些)
这是一个错误还是我必须以某种方式标记其他 li 标签以被刷新忽略?
编辑: 现在我知道,more < li> 没有问题 - 在测试环境中它可以工作,所以问题必须在其他地方......但仍然不知道在哪里......
jsFiddle 上的来源:http: //jsfiddle.net/Sledgehammer/hCdRy/,tab_index.html是:
<ul class="box-menu main-menu">
<li class="active"><a href="deny.html">e-sklep</a></li>
</ul>
<table class="panel-table">
<tr>
<td><span style="cursor:pointer" onclick="$.addTab();">PRESS HERE TO ADD TAB</span></td>
</tr>
</table>