TypeError:t未定义

时间:2018-07-31 02:50:33

标签: jquery daterangepicker

我已决定下载我所有的外部CSS和JavaScript文件,而不是依赖CDN。但是,在执行此操作之后,我遇到了daterangepicker.js插件的以下错误:

  

TypeError:t未定义

我已经研究了错误,并且遇到的所有问题都表明,没有完全引用moment.js,或者在daterangepicker.js文件之后都引用了它。但是,我的脚本是这样定义的:

<script src="js/jquery.min.js"></script>
<script src="js/popper.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/jquery.circliful.min.js"></script>
<script src="js/loader.js"></script>
<script src="js/moment.js"></script>
<script src="js/jquery.daterangepicker.min.js"></script>

我还确保没有以下屏幕截图所示的错别字: folder screenshot

我还直接从源代码的网站而不是从托管在某个地方的CDN下载JavaScript文件:

我不知道是什么原因导致了此问题,而我对于解决该问题完全不知所措。更令人沮丧的是,如果我像以前一样尝试重新使用CDN,错误仍然存​​在。

更新

为响应Tyler Roper的请求,以下是相关的JS代码:

// Setup the Agency Report date-picker
$('#date_range').dateRangePicker({
autoClose: true,
format: 'MMMM Do YYYY',
showShortcuts: true,
customShortcuts: [
{
  name: 'this week',
  dates : function() {
    var start = moment().day(0).toDate();
    var end = moment().day(6).toDate();
    return [start,end];
  }
},
{
  name: 'this month',
  dates : function() {
    var start = moment().startOf('month').toDate();
    var end = moment().endOf('month').toDate();
    return [start,end];
  }
},
{
  name: 'this year',
  dates : function() {
    var start = moment().startOf('year').toDate();
    var end = moment().endOf('year').toDate();
    return [start,end];
  }
}]
}).data('dateRangePicker').setDateRange(moment().startOf('year').toDate(), moment().toDate());

2 个答案:

答案 0 :(得分:0)

在选择选项control + U之后,尝试检查加载jQuery的URL,在浏览器中打开项目,然后按right button或用鼠标中的view page source

将打开一个新的浏览器表,其网址类似于:view-source:yout-website-here

现在点击链接加载您的jquery

更正

如果您使用作曲家(经理),则可以在终端机require中使用命令后,在composer update中更改属性值。

答案 1 :(得分:0)

通常,当您在控制台中收到 TypeError: t is undefined 错误时,这是​​因为脚本无法处理它尝试根据您指定的输入字段创建的一个或多个变量。

大多数情况下这是由于定位不正确的元素(即定位父容器而不是实际输入)。正如 OP 在他们的评论中提到的,他们切换了元素 ID,并没有在代码中反映出来。

我个人遇到过不小心将输入字段的父 div 定位而不是直接定位到输入字段的问题。