我在SharePoint中创建了一个任务列表。当我尝试添加新任务时,它会打开一个包含 TaskName,StartDate,DueDate,Description,AssignedTo 等可见字段的表单。当我点击'ShowMore'时,它会显示所有剩余的字段,例如 %complete,TaskStatus,Priority,Comments,ExpectedDueDate。 < / p>
问题:我希望所有字段从一开始就可见而不点击 'ShowMore' ,因为有些人可能会感到困惑使用此选项可能会跳过填写这些字段。请有人请建议如何实现这一目标。任何帮助是极大的赞赏。谢谢!
答案 0 :(得分:1)
不幸的是,没有这样的设置允许在AFIK的任务中配置字段可见性 但是可以自定义任务表单以显示如下所示的所有字段。
由于它是SharePoint 2013环境,因此建议采用以下方法:
以下示例演示如何显示“任务”表单的所有字段:
(function () {
function preTaskFormRenderer(renderCtx) {
rlfiShowMore();
}
function registerRenderer()
{
var ctxForm = {};
ctxForm.Templates = {};
ctxForm.OnPreRender = preTaskFormRenderer;
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(ctxForm);
}
ExecuteOrDelayUntilScriptLoaded(registerRenderer, 'clienttemplates.js');
})();
TaskForm.js
)上传到SharePoint Site Assets
库JS Link
群组下的Miscellaneous
媒体资源:~sitecollection/SiteAssets/TaskForm.js
(见图1)
答案 1 :(得分:0)
我更喜欢JavaScript解决方法的其他方法来真正解决问题: 1.您可以更改分配给本地任务内容类型的列表表单,例如通过PowerShell:
$web = Get-SPWeb http://YourSharePointSite
$list = $web.Lists["Tasks"]
$ct = $list.ContentTypes[0]
$ct.DisplayFormTemplateName = "ListForm"
$ct.NewFormTemplateName = "ListForm"
$ct.EditFormTemplateName = "ListForm"
$ct.Update()
所有这些都具有显示所有字段的效果,而不显示&#34;显示更多&#34;按钮。您可以在此处详细了解这些方法: http://pholpar.wordpress.com/2014/11/01/no-more-show-more-in-tasks-lists/