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


Open a modal window in joomla with form fields in custom module config

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

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

实现此功能的正确方法是什么。

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

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

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

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

谢谢你的回答部分有用。

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

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

结果可以在这里找到:

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