【问题标题】:An error occurred while attempting to process /view/ajax: Cannot read property 'length' of undefined尝试处理 /view/ajax 时出错:无法读取未定义的属性“长度”
【发布时间】: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 弹窗吗?

标签: ajax drupal views


【解决方案1】:

我想通了——这是我的一些应用程序代码更改了数组原型。创建“比较”数组​​原型基本上会破坏 ajax/views 功能。

【讨论】:

    猜你喜欢
    • 2021-11-19
    • 2017-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-08
    • 2019-02-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多