在 joomla 中打开一个模式窗口,其中包含自定义模块配置中的表单字段

Posted

技术标签:

【中文标题】在 joomla 中打开一个模式窗口,其中包含自定义模块配置中的表单字段【英文标题】:Open a modal window in joomla with form fields in custom module config 【发布时间】:2014-06-01 08:34:24 【问题描述】:

您好,我正在开发一个模块,需要一个模式窗口来显示带有一些输入字段的表单。输入的值应传回模块设置。

我特别需要的是: 在模块设置中有一个带有按钮/链接的字段,它旁边应该打开弹出窗口。如果用户从弹出窗口保存表单,则应将插入的数据传回。

完成此功能的正确方法是什么。

【问题讨论】:

【参考方案1】:

我假设您可以创建表单并捕获提交的值。

模块设置存储在#_modules 表的“params”列中(# 是您的表前缀)。因此您可以通过简单的 SELECT 查询选择模块的数据,将“params”列的字符串解码为对象,更新值,将对象编码回 json 并将其保存到数据库。

请注意,您可以创建多个版本的模块,因此在#_modules 表中可能有很多模块记录,您需要确保获得正确的记录。

在你的模块的XML文件中,你还应该为提交的值添加字段,否则你在编辑你的模块时不能读取和编辑这些值。

【讨论】:

【参考方案2】:

感谢您的回答部分有用。

对于任何想知道我如何实现模态窗口并将数据从它传回主对话框的人:

我最终使用了 Fancybox (http://fancybox.net/),它是 JQuery,比 Joomla 默认模式窗口更灵活。

结果可以在这里找到:

项目的一般路径:https://github.com/DHoffm/Responsive-color-google-map JS:FancyBox 可以在 /js/fancybox 文件夹中找到,JQuery 点击处理可以在 /js/responsive_map_admin.js 中找到 php:/includes/elements/geodata.php(模态窗口的代码可以在底部找到)

【讨论】:

以上是关于在 joomla 中打开一个模式窗口,其中包含自定义模块配置中的表单字段的主要内容,如果未能解决你的问题,请参考以下文章

带有两个可点击按钮或 ImageView 的 Google 地图 v2 自定义信息窗口

如何在模态窗口中放置 Joomla 2.5 后端视图

如何在 Joomla 中将组件显示为文章?

在 AngularJS 中使用 ngIf 和 ngShow 显示按钮

使用带有实际模板的 Joomla 仅在弹出窗口中显示文章

将数据从 Firebase 传输到自定义信息窗口