Kod*_*ode 1 sharepoint sharepoint-2013
我试图通过查询字符串传递一个值来填充NewForm.aspx列表中的字段.示例:http://example.com/Lists/mylist/Newform.aspx?ID = 3
我被限制使用JavaScript并且必须坚持使用查询字符串.这可能吗?
SharePoint JS Library包含GetUrlKeyValue用于提取查询字符串参数的函数,例如:
var itemId = GetUrlKeyValue('ID'); //get Item Id from query string
Run Code Online (Sandbox Code Playgroud)
在SharePoint 2013中引入了客户端呈现(CSR)技术,用于自定义列表视图和表单.
由于CSR是SharePoint 2013中的默认呈现模式,因此我建议使用此方法自定义"新建表单"页面以填充表单字段.作为介绍,请按照本文介绍SharePoint 2013中的客户端呈现.
假设任务列表包含任务类别查找字段.然后,可以使用以下呈现模板来设置TaskCategory从名为的查询字符串参数中检索的查找字段值cat:
(function () {
var ctx = {};
ctx.Templates = {};
ctx.Templates.Fields = {
'TaskCategory': {
'NewForm': renderTaskCategory
}
};
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(ctx);
})();
function renderTaskCategory(ctx) {
var catId = GetUrlKeyValue('cat'); //extract cat parameter from a query string
ctx.CurrentFieldValue = catId; //set lookup field value
return SPFieldLookup_Edit(ctx); //default template for rendering Lookup field control
}
Run Code Online (Sandbox Code Playgroud)
为了应用更改,我们需要设置JSLinkXLV Web部件的属性:
Tasks.js.然后将指定的内容上载到SharePoint Site Assets库中Miscellaneousgroup JSLink属性下找到并指定其值:
~sitecollection/SiteAssets/Task.js如下图所示

| 归档时间: |
|
| 查看次数: |
24264 次 |
| 最近记录: |