【问题标题】:Admin LTE datepicker not showing up管理员 LTE 日期选择器未显示
【发布时间】:2016-06-29 02:49:22
【问题描述】:

我正在尝试在我的表单中添加日期选择器。请看一下

<script src="http://localhost:84/new_store/assets/template/plugins/jQuery/jQuery-2.2.0.min.js"></script>
<script src="http://localhost:84/new_store/assets/template/plugins/datepicker/bootstrap-datepicker.js"></script>
<script type="text/javascript">
  $('#datepickerss').datepicker({
    autoclose: true
  });
</script>

这里是字段

<div class="form-group">
  <label class="col-sm-3 control-label">Date</label>
    <div class="col-sm-5">
      <input type="text" class="form-control pull-right" id="datepickerss">
    </div>
</div>

当我尝试输入时,没有弹出日历(我不知道它的名字)。并且浏览器控制台日志中没有错误。我的HTML整页源码http://pastebin.com/9DDjKyNn

【问题讨论】:

  • 确保您的页面上没有 jquery 错误。并检查“datepickerss” id 不应在您的页面中多次使用。
  • @YogeshShakya 好吧,如果出现任何 jquery 错误,它会出现在控制台浏览器中,对吗?我看不到任何错误
  • 您需要包含“bootstrap-datepicker.css”,否则它将不起作用。正如我在您的代码中看到的那样,您包含“datepicker3.css”而不是bottstrap datepicker css。

标签: jquery datepicker adminlte


【解决方案1】:

添加这个为我解决了:

<link rel="stylesheet" href="https://adminlte.io/themes/v3/plugins/daterangepicker/daterangepicker.css" >

【讨论】:

    【解决方案2】:

    我希望这会有所帮助。

    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="utf-8">
      <meta http-equiv="X-UA-Compatible" content="IE=edge">
      <title>AdminLTE 2 | Advanced form elements</title>
      <!-- Tell the browser to be responsive to screen width -->
      <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">  
      <!-- Bootstrap 3.3.7 -->
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/4.3.1/cerulean/bootstrap.min.css">
      <!-- Font Awesome -->
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.9.0/css/all.min.css">
      <!-- daterange picker -->
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js">
      <!-- bootstrap datepicker -->
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js">    
      <!-- Theme style -->
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/admin-lte/2.4.12/js/adminlte.min.js">
      <!-- AdminLTE Skins. Choose a skin from the css/skins
           folder instead of downloading all of them to reduce the load. -->
      <link rel="stylesheet" href="../../dist/css/skins/_all-skins.min.css">
    
      </head>
    <body class="hold-transition skin-blue sidebar-mini">
    <div>
    <!-- /.col (left) -->
            <div class="col-md-6">
              <div class="box box-primary">
                <div class="box-header">
                  <h3 class="box-title">Date picker</h3>
                </div>
                <div class="box-body">
                  <!-- Date -->
                  <div class="form-group">
                    <label>Date:</label>
    
                    <div class="input-group date">
                      <div class="input-group-addon">
                        <i class="fa fa-calendar"></i>
                      </div>
                      <input type="text" class="form-control pull-right" id="datepicker">
                    </div>
                    <!-- /.input group -->
                  </div>
                  <!-- /.form group -->             
    
                </div>
                <!-- /.box-body -->
              </div>
              <!-- /.box -->          
            </div>
            <!-- /.col (right) -->
    </div>
    <!-- ./wrapper -->
    
    <!-- jQuery 3 -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <!-- Bootstrap 3.3.7 -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
    <!-- <script src="../../bower_components/bootstrap/dist/js/bootstrap.min.js"></script> -->
    <!-- date-range-picker -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-daterangepicker/3.0.5/daterangepicker.min.js"></script>
    <!-- bootstrap datepicker -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"></script>
    <!-- AdminLTE App -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/admin-lte/2.4.12/js/adminlte.min.js"></script>
    <!-- Page script -->
    <script>
      $(function () {
        //Date picker
        $('#datepicker').datepicker({
          autoclose: true
        })
      })
    </script>
    </body>
    </html>

    【讨论】:

      【解决方案3】:

      是 .daterangepicker() 不是 datepicker()

      //日期范围选择器

      $('#reservation').daterangepicker()
      //Date range picker with time picker
      $('#reservationtime').daterangepicker({
        timePicker: true,
        timePickerIncrement: 30,
        locale: {
          format: 'MM/DD/YYYY hh:mm A'
        }
      })
      //Date range as a button
      $('#daterange-btn').daterangepicker(
        {
          ranges   : {
            'Today'       : [moment(), moment()],
            'Yesterday'   : [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
            'Last 7 Days' : [moment().subtract(6, 'days'), moment()],
            'Last 30 Days': [moment().subtract(29, 'days'), moment()],
            'This Month'  : [moment().startOf('month'), moment().endOf('month')],
            'Last Month'  : [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
          },
          startDate: moment().subtract(29, 'days'),
          endDate  : moment()
        },
        function (start, end) {
          $('#reportrange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'))
        }
      )
      

      【讨论】: