gpt4 book ai didi

java - Alfresco 工作流程表单 添加两个文本框值并自动在第三个文本框中显示总和

转载 作者:行者123 更新时间:2023-12-01 10:01:43 25 4
gpt4 key购买 nike

我是露天的新手,我已经使用 kickstart 创建了工作流程,我部署到露天共享中,它工作正常,在工作流程表单中,我需要将两个文本框值相乘。我希望相乘的结果出现在第三个文本框中,如在前两个文本框中输入值后,可以不按任何按钮吗?以及如何?

最佳答案

以下是示例中的一些片段,该示例根据第一个字段中的下拉值隐藏第二个字段。您有类似的要求,因此这应该会有所帮助。

首先,编辑您的 share-config-custom.xml 表单配置以指示您的属性需要使用自定义表单控件。它看起来像这样:

           <field id="sc:field2" label-id="prop.sc_field2" >
<control template="/com/someco/components/form/controls/dynamicField.ftl" >
<control-param name="maxLength">255</control-param>
</control>
</field>

在本例中,我将根据 sc:field1 的值动态隐藏 sc:field2。在你的例子中,你正在处理三个字段——两个被相乘,第三个显示结果。您可能只需要第三个字段上的自定义表单控件。它可以轻松地从其他两个字段中获取值。

现在创建自定义表单控件。在自定义表单控件上添加一些 JavaScript,绑定(bind)到两个字段的 onChange 事件,以调用计算值的自定义函数。

在我的动态隐藏字段示例中,我使用 JQuery 对自定义表单控件执行类似的操作:

<@markup id="js">
<@script type="text/javascript" src="${url.context}/res/jquery/jquery-1.6.2-min.js" group="form" />
</@>

<script type="text/javascript">//<![CDATA[
// grab the field1 dropdown element
var field1El = $("#template_x002e_edit-metadata_x002e_edit-metadata_x0023_default_prop_sc_field1");

// declare a function that knows how to show/hide the div
var toggleField2 = function(field1) {
if (field1 === "Show Field2") {
$("#field2").show();
} else {
$("#template_x002e_edit-metadata_x002e_edit-metadata_x0023_default_prop_sc_field2").val('');
$("#field2").hide();
}
}

// bind the field1 dropdown element's change event to a function that calls our toggle function
field1El.bind("change", function(e) {
var selected = $("option:selected", this);
var field2 = this.value;
toggleField2(field2);
});

// invoke the toggle function based on the current value of the dropdown before it is changed
// by the user, ie, when the form is first opened
toggleField2(field1El.find("option:selected").text());
//]]></script>

在您的情况下,您不是根据下拉值显示/隐藏字段,而是获取两个字段的值,将它们相乘,然后将它们设置在第三个字段中,但应用相同的逻辑。每当两个字段中的任何一个发生变化时,您都想重新计算乘积并将其存储在第三个字段中。

关于java - Alfresco 工作流程表单 添加两个文本框值并自动在第三个文本框中显示总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36768739/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com