모두에게 좋은 하루.activiti 동적 테이블 재설정 내용
양식 영역에 동적 테이블을 만들었습니다. 자바 스크립트를 통해 내용을 다시 설정하는 항목을 드롭 다운 목록에서 선택한 경우 표의 내용을 재설정하고 싶습니다.
샘플 및 스 니펫을 보내 주시면 감사하겠습니다.
감사합니다.
모두에게 좋은 하루.activiti 동적 테이블 재설정 내용
양식 영역에 동적 테이블을 만들었습니다. 자바 스크립트를 통해 내용을 다시 설정하는 항목을 드롭 다운 목록에서 선택한 경우 표의 내용을 재설정하고 싶습니다.
샘플 및 스 니펫을 보내 주시면 감사하겠습니다.
감사합니다.
당신이 example 참조하거나 사용자 정의 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>
이 저장소에서 동적 데이터를 얻을 수있는 간단한 선택 FTL입니다 사용할 수 있습니다. 값 선택에 따라 onChange 이벤트에서 js 코드를 실행할 수 있습니다.
안녕하세요.
방금 답변을 찾았습니다. 저는 activiti 6.0 커뮤니티를 사용하고 있습니다. 필수 열을 false로 재설정하는 조건과 가시성 조건도 있습니다. 스크립트를 정리하고 정리 한 후 스 니펫을 보여 드리겠습니다.
감사합니다.
어떤 버전을 사용하고 있습니까? 그것은 솔루션에 대한 차이를 만듭니다. –