datepicker没有使用新标签

时间:2012-10-22 10:24:08

标签: tabs datepicker

点击时Datepicker没有使用新标签
这是代码

<script>
var tabCounter = 2,
    tabTemplate = "<li><a href='#{href}'>#{label}</a> <span class='ui-icon ui-icon-close'>Remove Tab</span></li>";
var tabs = $( "#tabs" ).tabs();
var tabContentHtml = $("#tabs-1").html();

创建datepicker。进入tab1。不适用于tab2

$( ".rush" ).datepicker();

点击按钮

时添加新标签页
$("#add_tab").click(function(){
        addTab();
});
function addTab() {
        var label = "Tab " + tabCounter,
            id = "tabs-" + tabCounter,
            li = $( tabTemplate.replace( /#\{href\}/g, "#" + id ).replace( /#\{label\}/g, label ) );

        tabs.find( ".ui-tabs-nav" ).append( li );
        tabs.append( "<div id='" + id + "'><p>" + tabContentHtml + "</p></div>" );
        tabs.tabs( "refresh" );
        tabCounter++;
    }
</script>

代码html

<div id="tabs">
<ul>
    <li><a href="#tabs-1">Nunc tincidunt</a> <span class="ui-icon ui-icon-close">Remove Tab</span></li>
</ul>
<div id="tabs-1">
    <input type="text" class="rush" />
</div>
</div>
<button id="add_tab">Add Tab</button>

2 个答案:

答案 0 :(得分:1)

它不起作用的原因是因为在加载页面时完成了datepicker的工作。当您添加新选项卡时,未创建日期选择器,请查看上一篇文章:

Making datepicker live - JQuery

答案 1 :(得分:0)

您必须在创建新标签后调用datepicker:

$("#add_tab").click(function(){
    addTab();
    $( ".rush" ).datepicker(); //or your new datepicker id
});