首页 > 解决方案 > 在 SharePoint 2013 列表表单的新建和编辑表单上显示计算字段

问题描述

我有一个包含一些列的 SharePoint 列表。我有以下情况:

ColA:Test1、Test2、Test3
ColB:
0、10、55 ColC:0 美元、12 美元、60 美元

Col A 是一个下拉菜单。Col B 和 C 是计算字段。根据在 ColA 中选择的值,将自动填充 ColB 和 ColC 值。由于 ColB 和 C 是计算列,因此它们显示在列表中以及 SharePoint 显示表单中。我想在 SharePoint 新建和用户编辑表单上以只读模式显示 ColB 和 C 字段。我使用的是 SharePoint 列表表单而不是 Infopath 表单。寻找实现此功能的建议。

标签: formssharepointeditnew-operator

解决方案


您可以使用 jquery 附加只读输入以用作查找列。

这是一个简单的演示脚本供您参考,您需要根据您的逻辑更新更新逻辑。

<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.js"></script>
    <script type="text/javascript">
        $(function () {
            var lookupValue = $('input[title="TxTField"]').val();            
            $('table.ms-formtable').append('<tr id="LookupColumnTR"><td class="ms-formlabel" nowrap="true" valign="top"><h3 class="ms-standardheader"><nobr>LookupColumn</nobr></h3></td><td><input disabled="disabled" type="value" value="' + lookupValue + '" class="text_box" /></td></tr>');

            $('input[title="TxTField"]').change(function () {
                var lookupValue = $(this).val();
                $('table.ms-formtable tr#LookupColumnTR').remove();
                $('table.ms-formtable').append('<tr id="LookupColumnTR"><td class="ms-formlabel" nowrap="true" valign="top"><h3 class="ms-standardheader"><nobr>LookupColumn</nobr></h3></td><td><input disabled="disabled" type="value" value="' + lookupValue + '" class="text_box" /></td></tr>');
            })

        })
    </script>

在此处输入图像描述


推荐阅读