0

可能重复:
日期选择器无法在新选项卡中使用

当我单击按钮“添加选项卡”时。Jquery 将为我创建新的选项卡新的日期选择器。但我无法在新的日期选择器上获取日期。它是空的。如何将新的日期选择器选择到新选项卡中?

我的代码

<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();

函数创建选择器

function datepicker(){
  $( ".rush" ).datepicker({
      changeMonth: true,
      numberOfMonths: 1,
      minDate: myDate,
      onSelect: function( selectedDate ) {
        // day is null for new tabs
        var day = $( ".rush" ).datepicker('getDate').getDate();
      }
  });
}

单击按钮时添加新选项卡

$("#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" );
        // Create new datepicker into new tabs
        datepicker();
        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>  
4

1 回答 1

0

尝试替换$( ".rush" ).datepicker('getDate').getDate();$(this).datepicker('getDate').getDate();以避免函数中的选择混淆。

function datepicker(){
  $( ".rush" ).datepicker({
      changeMonth: true,
      numberOfMonths: 1,
      minDate: myDate,
      onSelect: function( selectedDate ) {
        // day is null for new tabs
        var day = $(this).datepicker('getDate').getDate();
      }
  });
}
于 2012-10-23T03:49:50.433 回答