установите текущую дату по умолчанию в начале моего средства выбора даты, чтобы я мог фильтровать данные в соответствии с текущей датой

У меня есть daterangepicker из здесь. Вы можете увидеть javascrpt и css в: http://jsfiddle.net/CUMFw/

Я попытался показать установленную дату по умолчанию из этого решения (дата по умолчанию jQuery-UI datepicker & Как предварительно заполнить Текстовое поле jQuery Datepicker с сегодняшней датой?), но все еще не работает.

это мой частично экспериментальный php-код:

<script type="text/javascript" src="js/jquery-1.3.1.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.7.1.custom.min.js"></script>
<link rel="stylesheet" href="css/ui.daterangepicker.css" type="text/css" />
<link rel="stylesheet" href="css/redmond/jquery-ui-1.7.1.custom.css" type="text/css"title="ui-theme" />
<script type="text/javascript">
$(function(){ 
     $('#tgl').daterangepicker({
        defaultDate: new Date(),
        arrows:true,
        onChange: function(){
           $('#frmDate').submit()
        },
     });
});
</script>
<?php 
$dates = explode("-",$_POST[tgl] );
$date1=  date("Y-m-d", strtotime($dates[0]));
if ($dates[0] == $_POST[tgl]){
    $date2 = $date1;
    echo $date2;
}
else{
$date2=  date("Y-m-d", strtotime($dates[1]));}
?>
<form id="frmDate" action="http://localhost/job/uadmin.php?page=absensi" method="post">
<input id="tgl" name="tgl" type="text" class="field"  value="<?php echo $_POST[tgl]; ?>"/>
</form>

Пожалуйста, помогите мне с моей проблемой, спасибо.


person Mohamad Damba Putrabangga    schedule 20.08.2013    source источник


Ответы (2)


Две вещи, которые я бы попробовал. Во-первых, убедитесь, что у вас есть ссылка на jQuery над блоком скрипта. Используйте либо Google, либо локальную копию:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

Если это не сработает, попробуйте заменить все экземпляры $ в коде Javascript на jQuery:

jQuery(function(){ 
 jQuery('#tgl').daterangepicker({
    defaultDate: new Date(),
    arrows:true,
    onChange: function(){
       jQuery('#frmDate').submit()
    },
 });
});

Это может помочь избежать конфликтов с другими библиотеками, которые также используют $ в качестве переменной.

person musical_coder    schedule 20.08.2013
comment
привет,music_coder, спасибо за ответы. оказывается у меня уже есть jquery.min.js и jquery.UI.min.js. Я отредактировал свой вопрос. А потом у меня есть замена $ на JQuery, но все равно не работает. - person Mohamad Damba Putrabangga; 20.08.2013
comment
Попробуйте тогда вернуться к истокам. Замените внутреннюю часть блока jQuery следующим: jQuery('#tgl').daterangepicker({arrows: true, dateFormat: 'M d, yy'});, который я позаимствовал из исходного кода демонстрационной страницы средства выбора диапазона дат. Когда вы это делаете, отображается ли по крайней мере средство выбора диапазона без сегодняшней даты? - person musical_coder; 20.08.2013
comment
Привет, Мохамад. Какой-либо ответ сработал для тебя? Если это так, нажмите галочку на одном из них, чтобы принять его. В противном случае, пожалуйста, дайте нам знать, если мы можем помочь вам в дальнейшем. - person musical_coder; 25.08.2013

Я не правильно понял вопрос. вместо defaultDate попробуйте setDate. Насколько я знаю, нет метода onSelect для события onChange.

$('#tgl').daterangepicker({
    setDate: new Date(),//changed defaultDate to setDate.
    arrows:true,
    onSelect: function(){
       $('#frmDate').submit()
    }//removed comma here
 });
person Viraths    schedule 20.08.2013
comment
Привет Viraths, спасибо за ваши ответы. Предыдущий код, я пробовал с setDate. Но все равно не работает. а затем я пытаюсь с defaultDate, но все равно. Я просто хочу установить текущую дату по умолчанию в начале моего средства выбора даты. Так что, когда я открываю эту страницу, я могу фильтровать данные в соответствии с текущей датой. - person Mohamad Damba Putrabangga; 20.08.2013
comment
Вы пробовали метод onSelect вместо onChange - person Viraths; 20.08.2013