动态将字段添加到共享表单

罗勒

我想为添加到户外附件包项目中的每个文件添加一个文本字段,以编写有关每个文件的注释,这可能吗?

马可·阿尔铁里(Marco Altieri)

我已经实现了一些可以在您的用例中重用的东西。

您可以使用多个值定义一个属性,该值将包含与每个附件关联的注释列表。

有一个简单的技巧可以发布具有多个值的属性:在属性名称上添加“ []”。例如:

<input id="template_x002e_edit-metadata_x002e_edit-metadata_x0023_default_prop_someco_notes_0" 
    name="prop_someco_notes[]" 
    tabindex="0" 
    type="text" 
    value="Meeting minutes" 
    title="Notes"
    noderef="workflow://...."
    >

<input id="template_x002e_edit-metadata_x002e_edit-metadata_x0023_default_prop_someco_notes_1" 
    name="prop_someco_notes[]" 
    tabindex="1" 
    type="text" 
    value="Meeting minutes" 
    title="Notes"
    noderef="workflow://...."
>

如您所见,输入名称以[]结尾。两个输入文本字段具有相同的名称。

Alfresco表单引擎会将这两个输入视为具有多个值的属性的值:“ someco:notes”。

更大的问题是,您需要使用一些智能javascript和免费标记模板来生成此html。

您可以编写一个自定义的免费标记模板来呈现初始html:如果用户打开一个已经附加了文档的任务,则需要使用自定义控件生成输入列表(当然,您可以从文本字段开始。 ftl)。

生成初始列表并不容易,因为不幸的是Alfresco将值列表作为单个逗号分隔的值返回。

您可以自定义将模型插入免费标记模板“ org.alfresco.web.scripts.forms.FormUIGet”中的网络脚本,以传递数组而不是csv。

一种更快,更脏的解决方案是拆分csv值。在share-config-custom.xml中,您可以指定显示的textfield.ftl用作分隔符而不是逗号。

当用户从包中添加/删除元素时,您可以拦截更新并添加/删除对应的注释。请注意,我已将字段“ noderef”添加到每个输入中,因此可以知道注释与包中节点之间的关系。

更新:对于关联(例如,用于在工作流任务中定义程序包),Share使用一个名为“对象查找器”(或“对象选择器”)的JavaScript库。该库会触发一个名为“ formValueChanged”的事件,您可以拦截该事件:

        YAHOO.Bubbling.fire("formValueChanged",
        {
           eventGroup: this,
           addedItems: addedItems,
           removedItems: removedItems,
           selectedItems: selectedItems,
           selectedItemsMetaData: Alfresco.util.deepCopy(this.selectedItems)
        });

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将表单字段动态添加到Django表单

来自分类Dev

将动态字段添加到Django管理模型表单

来自分类Dev

使用Django动态将字段添加到模型表单

来自分类Dev

动态将占位符添加到表单字段

来自分类Dev

在Angular 8中将表单字段动态添加到反应表单

来自分类Dev

MVC 5使用jquery将动态字段添加到表单并将其保存到模型

来自分类Dev

在将表单字段动态添加到DOM之前和之后进行计数

来自分类Dev

将验证规则动态添加到 Redux 表单字段的更优雅的方法是什么?

来自分类Dev

BootstrapValidator,验证动态添加到表单中的字段

来自分类Dev

动态将Select2添加到表单

来自分类Dev

动态将角度属性添加到旧的html表单

来自分类Dev

动态将Select2添加到表单

来自分类Dev

将类添加到表单字段Django ModelForm

来自分类Dev

将角色字段添加到FOSUserBundle组表单

来自分类Dev

将多个字段添加到表单

来自分类Dev

自动将隐藏字段添加到表单

来自分类Dev

将后缀添加到表单字段

来自分类Dev

将输入字段添加到HTML表单

来自分类Dev

Django - 将表单添加到 django admin 的字段集中?

来自分类Dev

如何将类添加到表单输入字段?

来自分类Dev

动态将输入字段添加到数组中

来自分类Dev

将字段添加到clientdataset还是动态访问它?

来自分类Dev

将字段添加到clientdataset还是动态访问它?

来自分类Dev

使用JS将隐藏的表单字段添加到动态生成的Squarespace新闻稿块中

来自分类Dev

具有部分的动态表单仅将字段添加到最后一部分

来自分类Dev

以正确的方式使用javascript将动态表单添加到Django表单集中

来自分类Dev

使用Javascript将表单动态添加到Django表单集中

来自分类Dev

如何将表单动态添加到 Django 表单集?

来自分类Dev

Symfony 5在表单提交后将字段添加到表单

Related 相关文章

  1. 1

    将表单字段动态添加到Django表单

  2. 2

    将动态字段添加到Django管理模型表单

  3. 3

    使用Django动态将字段添加到模型表单

  4. 4

    动态将占位符添加到表单字段

  5. 5

    在Angular 8中将表单字段动态添加到反应表单

  6. 6

    MVC 5使用jquery将动态字段添加到表单并将其保存到模型

  7. 7

    在将表单字段动态添加到DOM之前和之后进行计数

  8. 8

    将验证规则动态添加到 Redux 表单字段的更优雅的方法是什么?

  9. 9

    BootstrapValidator,验证动态添加到表单中的字段

  10. 10

    动态将Select2添加到表单

  11. 11

    动态将角度属性添加到旧的html表单

  12. 12

    动态将Select2添加到表单

  13. 13

    将类添加到表单字段Django ModelForm

  14. 14

    将角色字段添加到FOSUserBundle组表单

  15. 15

    将多个字段添加到表单

  16. 16

    自动将隐藏字段添加到表单

  17. 17

    将后缀添加到表单字段

  18. 18

    将输入字段添加到HTML表单

  19. 19

    Django - 将表单添加到 django admin 的字段集中?

  20. 20

    如何将类添加到表单输入字段?

  21. 21

    动态将输入字段添加到数组中

  22. 22

    将字段添加到clientdataset还是动态访问它?

  23. 23

    将字段添加到clientdataset还是动态访问它?

  24. 24

    使用JS将隐藏的表单字段添加到动态生成的Squarespace新闻稿块中

  25. 25

    具有部分的动态表单仅将字段添加到最后一部分

  26. 26

    以正确的方式使用javascript将动态表单添加到Django表单集中

  27. 27

    使用Javascript将表单动态添加到Django表单集中

  28. 28

    如何将表单动态添加到 Django 表单集?

  29. 29

    Symfony 5在表单提交后将字段添加到表单

热门标签

归档