【问题标题】:How do I add dynamic dropdown in Joomla JForm XML file如何在 Joomla JForm XML 文件中添加动态下拉列表
【发布时间】:2012-10-08 05:52:29
【问题描述】:

Joomla 开发相当新。在模型文件夹中放置一个名为 Forms 的文件夹以加载必要的 JForm 数据。一切正常,但我需要从数据库中动态获取数据以填充下拉框。

    <field name="category"
        type="list"
        label="Item Category"
        description="Item Category"
        class="inputbox"
                >
        <option value="1">
            Data from database</option>
        <option value="2">
            Data from database</option>
        <option value="3">
            Data from database</option>
    </field>

以上是一个粗略的例子。我希望值和选项名称来自数据库。我是否使用 JTable 或参数,如果是,如何使用?我非常感谢任何帮助。谢谢大家。

【问题讨论】:

    标签: xml forms joomla


    【解决方案1】:

    您可以通过创建自己的字段类型来做到这一点。 Joomla Com_Categories 具有该字段类型 (administrator/com_categories/models/fields/categoryedit.php) 使用 categoryedit 作为下拉 html 元素的 category.xml 中的字段类型来填充类别下拉列表。

    <field name="parent_id" type="categoryedit" label="COM_CATEGORIES_FIELD_PARENT_LABEL" description="COM_CATEGORIES_FIELD_PARENT_DESC"/>

    【讨论】:

      【解决方案2】:

      动态数据可以使用“sql”类型-

      http://docs.joomla.org/SQL_form_field_type

      如下例-

      <field 
          name="link" 
          type="sql" 
          default="" 
          class="articleselectbox" 
          label="Select an article"
          query="SELECT 
          concat(#__categories.alias, '/', #__content.id,'-', #__content.alias,'.html') as value,              
          concat(#__categories.alias, '/', #__content.id,'-', #__content.alias,'.html') as title 
          FROM #__content 
          LEFT JOIN #__categories ON #__content.catid=#__categories.id 
          ORDER BY #__content.title" 
          key_field="title" 
          value_field="value" 
      /> 
      

      【讨论】:

      • 非常感谢您的帮助!我得到了它的工作基于你的帮助。再次感谢!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-27
      • 1970-01-01
      • 1970-01-01
      • 2016-10-19
      • 2020-02-15
      • 2016-11-03
      • 2017-04-15
      相关资源
      最近更新 更多