为什么 core.js 没有加载到 Joomla 3 中?

Why is core.js not loaded in Joomla 3?

我正在将我自己的 Joomla 组件从 Joomla 2.5 迁移到 Joomla 3。一些按钮使用 javascript Joomla.submitform(),这是在 \media\system\js\core.js 中定义的,但不知何故现在不再加载文件...

我可以简单地将 JFactory::getDocument()->addScript( JURI::root().'media/system/js/core.js' ) 添加到我的组件代码中,但这对我来说似乎是一种快速而肮脏的方式。

有人能告诉我什么是干净整洁的方法吗?非常感谢您的帮助!

它是在您使用 JHtml::_('behavior.formvalidator'); 行时添加的。这还会添加 punycode.js 和 validate.js.

所有调用 submitform() 的前端核心组件似乎都将此添加到它们的 default.php 文件中。

以下是我在前端找到的地方:

  • \components\com_config\view\config\tmpl\default.php
  • \components\com_config\view\modules\tmpl\default.php
  • \components\com_config\view\templates\tmpl\default.php
  • \components\com_content\views\form\tmpl\edit.php

简单易行

JHtmlBehaviour::core();