Alfresco activiti动态表重置内容

Alfresco activiti动态表重置内容,alfresco,activiti,bpmn,bpmn.io,Alfresco,Activiti,Bpmn,Bpmn.io,大家好 我在表单区域创建了一个动态表。 如果我在下拉列表中选择了将触发内容重置(通过javascript)的项目,我希望重置表的内容 请提供样品和片段 谢谢。您可以参考此信息,也可以使用自定义ftl <#include "/org/alfresco/components/form/controls/common/utils.inc.ftl" /> <#if field.control.params.optionSeparator??> <#assign op

大家好

我在表单区域创建了一个动态表。 如果我在下拉列表中选择了将触发内容重置(通过javascript)的项目,我希望重置表的内容

请提供样品和片段

谢谢。

您可以参考此信息,也可以使用自定义ftl

<#include "/org/alfresco/components/form/controls/common/utils.inc.ftl" />

<#if field.control.params.optionSeparator??>
   <#assign optionSeparator=field.control.params.optionSeparator>
<#else>
   <#assign optionSeparator=",">
</#if>
<#if field.control.params.labelSeparator??>
   <#assign labelSeparator=field.control.params.labelSeparator>
<#else>
   <#assign labelSeparator="|">
</#if>

<#assign fieldValue=field.value>

<#if fieldValue?string == "" && field.control.params.defaultValueContextProperty??>
   <#if context.properties[field.control.params.defaultValueContextProperty]??>
      <#assign fieldValue = context.properties[field.control.params.defaultValueContextProperty]>
   <#elseif args[field.control.params.defaultValueContextProperty]??>
      <#assign fieldValue = args[field.control.params.defaultValueContextProperty]>
   </#if>
</#if>

<div class="form-field">
   <#if form.mode == "view">
      <div class="viewmode-field">
         <#if field.mandatory && !(fieldValue?is_number) && fieldValue?string == "">
            <span class="incomplete-warning"><img src="${url.context}/res/components/form/images/warning-16.png" title="${msg("form.field.incomplete")}" /><span>
         </#if>
         <span class="viewmode-label">${field.label?html}:</span>
         <#if fieldValue?string == "">
            <#assign valueToShow=msg("form.control.novalue")>
         <#else>
            <#assign valueToShow=fieldValue>
            <#if field.control.params.options?? && field.control.params.options != "">
               <#list field.control.params.options?split(optionSeparator) as nameValue>
                  <#if nameValue?index_of(labelSeparator) == -1>
                     <#if nameValue == fieldValue?string || (fieldValue?is_number && fieldValue?c == nameValue)>
                        <#assign valueToShow=nameValue>
                        <#break>
                     </#if>
                  <#else>
                     <#assign choice=nameValue?split(labelSeparator)>
                     <#if choice[0] == fieldValue?string || (fieldValue?is_number && fieldValue?c == choice[0])>
                        <#assign valueToShow=msgValue(choice[1])>
                        <#break>
                     </#if>
                  </#if>
               </#list>
            </#if>
         </#if>
         <span class="viewmode-value">${valueToShow?html}</span>
      </div>
   <#else>
      <label for="${fieldHtmlId}">${field.label?html}:<#if field.mandatory><span class="mandatory-indicator">${msg("form.required.fields.marker")}</span></#if></label>
      <#if field.control.params.options?? && field.control.params.options != "">
         <select id="${fieldHtmlId}" name="${field.name}" tabindex="0"
               <#if field.description??>title="${field.description}"</#if>
               <#if field.indexTokenisationMode??>class="non-tokenised"</#if>
               <#if field.control.params.size??>size="${field.control.params.size}"</#if> 
               <#if field.control.params.styleClass??>class="${field.control.params.styleClass}"</#if>
               <#if field.control.params.style??>style="${field.control.params.style}"</#if>
               <#if field.disabled  && !(field.control.params.forceEditable?? && field.control.params.forceEditable == "true")>disabled="true"</#if>>
               <#list field.control.params.options?split(optionSeparator) as nameValue>
                  <#if nameValue?index_of(labelSeparator) == -1>
                     <option value="${nameValue?html}"<#if nameValue == fieldValue?string || (fieldValue?is_number && fieldValue?c == nameValue)> selected="selected"</#if>>${nameValue?html}</option>
                  <#else>
                     <#assign choice=nameValue?split(labelSeparator)>
                     <option value="${choice[0]?html}" <#if choice[0] == fieldValue?string || (fieldValue?is_number && ((fieldValue - choice[0]?number)?string == "0"))> selected="selected"</#if>>${msgValue(choice[1])?html}</option>
                  </#if>
               </#list>
         </select>
         <@formLib.renderFieldHelp field=field />
      <#else>
            <select id="${fieldHtmlId}" name="${field.name}" tabindex="0"
               <#if field.description??>title="${field.description}"</#if>
               <#if field.indexTokenisationMode??>class="non-tokenised"</#if>
               <#if field.control.params.size??>size="${field.control.params.size}"</#if> 
               <#if field.control.params.styleClass??>class="${field.control.params.styleClass}"</#if>
               <#if field.control.params.style??>style="${field.control.params.style}"</#if>
               <#if field.disabled  && !(field.control.params.forceEditable?? && field.control.params.forceEditable == "true")>disabled="true"</#if>>

         </select>
         <@formLib.renderFieldHelp field=field />
         <!-- <div id="${fieldHtmlId}" class="missing-options">Hello ${msg("form.control.selectone.missing-options")}</div> -->
      </#if>
   </#if>
</div>

<script type="text/javascript">//<![CDATA[



//var abcd = 

YAHOO.util.Event.onContentReady("${fieldHtmlId}", function ()
{

    console.log("type name "+"${fieldHtmlId}");

  Alfresco.util.Ajax.jsonGet({
        url: encodeURI(Alfresco.constants.PROXY_URI + 'url'),
        successCallback:
        {
            fn: function loadWebscript_successCallback(response, config)
            {
                var obj = eval('(' + response.serverResponse.responseText + ')');
                var allResults = obj.values;
                function sorting(json_object, key_to_sort_by) {
                        function sortByKey(a, b) {
                            var x = a[key_to_sort_by];
                            var y = b[key_to_sort_by];
                            return ((x < y) ? -1 : ((x > y) ? 1 : 0));
                        }

                        json_object.sort(sortByKey);
                    }
                if (obj)
                {
                    sorting(allResults, 'value');
                    for (i = 0; i < allResults.length; i++) {
                            var newOption = document.createElement('option');
                            newOption.value = allResults[i].value;
                            newOption.text = (allResults[i].desc == "")?allResults[i].value:allResults[i].value +" - "+ allResults[i].desc;
                            YAHOO.util.Dom.get("${fieldHtmlId}").options.add(newOption);
                    }
                    if("${fieldValue}" != null && "${fieldValue}" != "" && "${fieldValue}" != undefined){
                        YAHOO.util.Dom.get("${fieldHtmlId}").value = "${fieldValue}";
                    }
                }

            }
        }
    });

}, this);
</script>

${field.label?html}:
${valueToShow?html}
${field.label?html}:${msg(“form.required.fields.marker”)}
${nameValue?html}
${msgValue(选项[1])?html}
//是吗?1 : 0));
}
json_object.sort(sortByKey);
}
如果(obj)
{
排序(所有结果,'值');
对于(i=0;i
这是从存储库获取动态数据的简单选择ftl。 根据选择的值,您可以在onChange事件上执行js代码。

祝您好运

我刚刚找到答案。 我正在使用Activiti6.0社区。 还有一个条件将所需列重置为false,还有一个可见性条件。 在清理和组织脚本之后,我将显示代码段


感谢您的努力。

您使用的是什么版本?这对解决办法有影响。