jQuery MiniUI

标题: mini-tabs更新tab影响其他tab [打印本页]

作者: 懂三井    时间: 2017-10-23 17:26:57     标题: mini-tabs更新tab影响其他tab

本帖最后由 懂三井 于 2017-10-23 17:28 编辑

mini-tabs中有三个tab分别为tab1,tab2,tab3

其中tab的title是动态赋值的,类似于
<div title="tab1<span id='t1'></span>" name="tab1"></div>
<div title="tab2<span id='t2'></span>" name="tab2"></div>
<div title="tab3<span id='t3'></span>" name="tab3"></div>


假如现在动态设置tab1的title的值为 "tab1xx",若是更新其他的tab,比如隐藏tab3,这时tab1的title值会变为"tab1", 而动态设置的"xx"则消失了

"xx"值是span中的内容,动态设置的

作者: felt    时间: 2017-10-23 17:53:19

[attach]10055[/attach]本地测试未发现问题,请提供简单重现html分析
作者: 懂三井    时间: 2017-10-24 10:31:27

felt 发表于 2017-10-23 17:53
本地测试未发现问题,请提供简单重现html分析

  <div id="tabs1" class="mini-tabs">
           <div title="tab1<span id='t1'></span>" name="tab1"></div>

            <div title="tab2<span id='t2'></span>" name="tab2"></div>

            <div title="tab3<span id='t3'></span>" name="tab3"></div>
   </div>




<script type="text/javascript">
    mini.parse();
    $("#t1").text("t1"); // 先动态赋值, 这时第一个tab的title的值是tab1t1
    function hideTab() {
        var tabs = mini.get("tabs1");
        var tab = tabs.getTab("tab3");
        tabs.updateTab(tab, { visible: false }); // 第一个tab的title的值变为tab1
    }
</script>
作者: dforce    时间: 2017-10-24 10:49:35

懂三井 发表于 2017-10-24 10:31
mini.parse();
    $("#t1").text("t1"); // 先动态赋值, 这时第一 ...

你这赋值方式没用的,隐藏一个tab后我们会根据原始代码来重绘,
要么你这样更新title
tabs.updateTab(tab,{title:"tab1<span id='t1'>t1</span>"})
要么,在隐藏之后再次调用 $("#t1").text("t1")来修改。
作者: 懂三井    时间: 2017-10-24 15:24:22

dforce 发表于 2017-10-24 10:49
你这赋值方式没用的,隐藏一个tab后我们会根据原始代码来重绘,
要么你这样更新title
tabs.updateTab(tab ...

嗯, 我考虑一下其他方式吧




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2