【问题标题】:multiple custom fields using xml in joomla在 joomla 中使用 xml 的多个自定义字段
【发布时间】:2023-03-29 05:48:02
【问题描述】:

我需要在 joomla 3.0 的模块中使用 xml 创建一些自定义字段。 我做了这样的事情,如下所示。 我的字段 mod_category.xml 文件代码是:

<fields name="params">
    <fieldset name="protection" addfieldpath="/modules/mod_careercategory/include/" label="tagelement">
    <field name="headerTitle" type="text" default="" label="HEADER_TITLE" description="HEADER_TITLE_DESC"/>
    <field name="Title" type="tagelements" label="TITLE" id="Title"/>
</fieldset>
</fields>

我的 tagelements.php 代码是:

jimport('joomla.form.formfield');

class JFormFieldTagElements extends JFormField
{
    protected $type = 'tagelements'; //the form field type

 protected function getInput()
 {

     return '<input type="text" name="'.$this->name.'" id="'.$this->id.'" label="Title"/><br />'.
        '<input type="text" name="Link" id="Link" label="Link"/><br />'.
        '<input type="text" name="Order" id="order" label="order"/><br />'.
        '<input type="button" id="btnAdd" name="addmore" value="Add more">
         <input type="button" id="btnDel" value="Remove" />';               


 }

我有两个按钮,添加和删除,使用 jQuery 将在单击时添加更多这些字段。单击删除按钮时,字段将被删除。

当我运行此代码时,会显示 4 个文本框和两个按钮。但是当我保存表单时,只有第一个文本框的值存储在数据库中。

我希望保存所有字段。有人可以帮帮我吗?

【问题讨论】:

  • 请显示您用于添加/删除字段的 jQuery 代码
  • 您打算如何将动态创建的字段存储在静态数据库中?一种方法是使用 json 对字段进行编码并将它们存储在数据库的属性字段中
  • $this-&gt;name 有一个类似 jform 的字符串,因此您需要手动/以编程方式将其添加到 LinkOrder 的名称中 元素。它变成说&lt;input type="text" name="jform[Link]" id="jform_Link" label="Link"/&gt;

标签: jquery xml joomla


【解决方案1】:

我相信自定义表单字段仅用于创建单个表单字段,因此保存表单时不会期待后续字段。

可能会起作用的是让您的主字段(名称为 "$this->name" 的字段)成为隐藏字段,然后您的 jquery 在提交时使用其他数据填充该字段(可能是 json 格式)。

【讨论】:

    【解决方案2】:

    如果您想要所有三个可用服务器端的数据,它们实际上应该是表单 XML 定义文件中的三个单独的文本字段。您的自定义字段只是将三个标准文本字段组合为一个,但正如之前的海报所指出的,Joomla 中的自定义字段旨在处理一个字段。

    “最佳”解决方案取决于您要对数据执行的操作以及数据在代码服务器端执行的位置。

    【讨论】:

      猜你喜欢
      • 2015-04-08
      • 1970-01-01
      • 1970-01-01
      • 2014-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-01
      • 1970-01-01
      相关资源
      最近更新 更多