2014-12-02 46 views
1

我得到這個工作:MultiDatesPicker天數

<ul class="calendar"> 
      <li class="demo full-row"> 
       <div id="full-year" class="box"></div> 
        <div> 
         <div style="float:left"> 

     <?php  
      echo "<script type='text/javascript'> 
       var today = new Date(); 
       var y = today.getFullYear(); 
       $('#full-year').multiDatesPicker({ 
       // addDates: ['10/14/'+y, '02/19/'+y, '01/14/'+y, '11/16/'+y], 
       // numberOfMonths: [1,3], 
       minDate:0, 
       altField: '#input-option".$option['product_option_id']."', 
       // defaultDate: '1/1/'+y 
       }); 
      </script>"; 
     ?> 
      <script type='text/javascript'> 
       function getSelectedDays(){ 
        $('#input-quantity').val($("#full-year").get(0).multiDatesPicker.dates.picked.length+1); 
        } 
        $('.ui-state-default').click(function(){ 
         window.alert('test'); 
         getSelectedDays(); 
        }); 
      </script> 

     </div> 
    <div style="float:right"> 
    <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> 
      <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> 
      <div class="input-group date"> 
      <textarea cols="11" rows="12" type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"/></textarea> 
      </div> 
     </div> 
         </div> 
        </div> 
        <div style="clear:both"></div> 
      <label class="control-label" for="input-quantity"><?php echo $entry_qty; ?></label> 
      <input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" id="input-quantity" class="form-control" />       
       </li> 

      </ul> 

這基本上作品 - 它給我的結果,並與天數,但只有一次更新輸入表單。因此,第一次點擊日曆日工作並更新輸入表單。如果我選擇更多的日子,功能不會再次觸發

如果我放置#全年 - 功能的作品,但只有當我點擊日曆框架,而不是日期本身。

對不起,代碼混亂..通常不這樣做。

回答

2

您可以得到任何選擇的日期: -

$("#full-year").get(0).multiDatesPicker.dates.picked.length

此功能添加到您的代碼:

function getSelectedDays(){ 
    $('input#id').val($("#full-year").get(0).multiDatesPicker.dates.picked.length); 
} 

$('#full-year').multiDatesPicker({ 
    ... 
    onSelect: function() { 
      getSelectedDays(); 
    } 
    ... 
}); 
+0

謝謝你的努力拉夫,但是:( 「UI的日期選擇壓光機」) '$點擊(函數(){ getSelectedDays(。 ); });' 似乎沒有觸發功能,所以我改變了對: '$( 「UI狀態默認」。)點擊(函數(){ getSelectedDays(); }。 );'這會觸發函數,但只會觸發一次,如果我繼續在日曆中選擇日期,那麼功能不會再次觸發。 – 2014-12-02 08:27:26

+0

我已經更新了代碼。使用$(「#全年」)而不是$(「。ui-datepicker-calender」)。它將會完美地工作。 – 2014-12-02 08:32:54

+0

不,$(「全年」)不會觸發它 – 2014-12-02 08:44:30