2017-01-30 82 views
0

我對運行時產生的datepickers,每一個ID列表,但都在同一個類「日期選擇器」.datepicker()函數適用於第二次點擊

<input class="datepicker" data-id="Adult" id="datepicker-0" Name="DateOfBirth0"> 
<input class="datepicker" data-id="Child" id="datepicker-1" Name="DateOfBirth1"> 
<input class="datepicker" data-id="Child" id="datepicker-2" Name="DateOfBirth2"> 

在JavaScript中,我想使13和90,和兒童2和12之間年齡的成年人的年齡所以我這樣做:

$(function() { 
     $(".datepicker").click(function() { 
      var aId = this.id.split('-'); 
      var refNum = aId[1]; 
      var dataId = $("#datepicker-" + refNum).attr('data-id'); 

      var minDate = ""; 
      var maxDate = ""; 
      if (dataId == 'Adult') { 
       minDate = "-90Y"; 
       maxDate = "-13Y"; 
      } 
      else if (dataId == 'Child') { 
       minDate = "-12Y"; 
       maxDate = "-2Y"; 
      } 

      $("#datepicker-" + refNum).datepicker({ 
       changeMonth: true, 
       changeYear: true, 
       maxDate: maxDate, 
       minDate: minDate 
      }); 
     }); 
    }); 

所以這是發生奇怪的事情,就是在頁面加載時,我第一次點擊「 .datepicker「輸入,沒有任何反應。第二次點擊輸入時,出現日期選擇日曆。

任何想法爲什麼?

+0

因爲首先點擊只是其作爲日期選擇器 –

回答

1

它正在第二次點擊,因爲它沒有采取焦點之前了。 檢查下面的提琴手創建。

https://jsfiddle.net/0xr4jeba/ 

希望這會有所幫助!

$("#datepicker-" + refNum).datepicker({ 
           changeMonth: true, 
           changeYear: true, 
           maxDate: maxDate, 
           minDate: minDate 
          }).focus(); 
+0

完美。謝謝! – HelpASisterOut

0

嘗試添加

$(document).ready(function() { 

    $(".datepicker").click(function() { 
       var aId = this.id.split('-'); 
       var refNum = aId[1]; 
       var dataId = $("#datepicker-" + refNum).attr('data-id'); 

       var minDate = ""; 
       var maxDate = ""; 
       if (dataId == 'Adult') { 
        minDate = "-90Y"; 
        maxDate = "-13Y"; 
       } 
       else if (dataId == 'Child') { 
        minDate = "-12Y"; 
        maxDate = "-2Y"; 
       } 

       $("#datepicker-" + refNum).datepicker({ 
        changeMonth: true, 
        changeYear: true, 
        maxDate: maxDate, 
        minDate: minDate 
       }); 
      }); 

    }); 

這保證了文檔加載和事件listners線點擊

+0

註冊我試了一下,還是同樣的問題 – HelpASisterOut

+0

檢查我上面的解決方案。 –

相關問題