尝试处理 /view/ajax 时出错:无法读取未定义的属性“长度”
Posted
技术标签:
【中文标题】尝试处理 /view/ajax 时出错:无法读取未定义的属性“长度”【英文标题】:An error occurred while attempting to process /view/ajax: Cannot read property 'length' of undefined 【发布时间】:2017-07-20 00:14:47 【问题描述】:当我更改选择列表上的值时,在 Drupal 视图公开过滤器上出现此错误。尝试了 jquery 和 jquery UI 的每种组合。跟踪调用堆栈到 misc/ajax.js:
Error
at alert (<anonymous>:4:15)
at Drupal.ajax.eventResponse (ajax.js?v=7.36:262)
at htmlInputElement.<anonymous> (ajax.js?v=7.36:178)
at HTMLInputElement.dispatch (jquery.min.js?v=1.10.2:5)
at HTMLInputElement.v.handle (jquery.min.js?v=1.10.2:5)
at Object.trigger (jquery.min.js?v=1.10.2:5)
at HTMLInputElement.<anonymous> (jquery.min.js?v=1.10.2:5)
at Function.each (jquery.min.js?v=1.10.2:4)
at $.fn.init.each (jquery.min.js?v=1.10.2:4)
at $.fn.init.trigger (jquery.min.js?v=1.10.2:5)
【问题讨论】:
您没有提供足够的信息让我们提供帮助。更改选择元素时不应触发 Ajax。默认情况下,它仅在提交公开的表单时触发。您是否有任何模块或自定义代码来操作公开的表单? 视图已启用 ajax。因此,当您从公开的过滤器选择列表中选择一个选项时,将调用 ajax 以使用新条件填充块。 就像我说的,据我所知,即使启用了 ajax,当按下提交按钮时,暴露的表单也会提交。如果它在选择更改事件上提交,那么它不是默认行为,并且正在改变它。为您的问题添加更多细节,因为现在几乎不可能为您提供帮助。 您可以在暴露的表单设置中隐藏提交和自动提交:i.imgur.com/a5KrACS.png 哦,你是对的,对不起。如果没有更多信息,仍然无法提供更多帮助。您发布的内容是在 js 控制台中打印的内容吗?没有看到 js alert 弹窗吗? 【参考方案1】:我想通了——这是我的一些应用程序代码更改了数组原型。创建“比较”数组原型基本上会破坏 ajax/views 功能。
【讨论】:
以上是关于尝试处理 /view/ajax 时出错:无法读取未定义的属性“长度”的主要内容,如果未能解决你的问题,请参考以下文章
当不应该在 discord.js 命令处理程序中未定义时,无法读取未定义的属性