Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何通过JS链接在Sharepoint 2013列表视图中触发默认呈现_Javascript_List_Sharepoint 2013_Jslink - Fatal编程技术网

Javascript 如何通过JS链接在Sharepoint 2013列表视图中触发默认呈现

Javascript 如何通过JS链接在Sharepoint 2013列表视图中触发默认呈现,javascript,list,sharepoint-2013,jslink,Javascript,List,Sharepoint 2013,Jslink,我正在通过JS链接为SharePoint列表构建自定义布局。。。 目前,我正在独自呈现,但对于一些更复杂的项目(分类法、URL等),能够触发SharePoint的自定义呈现将是非常棒的 对于单字段类型,这是否可能 var csListView = csListView || {}; csListView.ListBody = '<div class="datagrid"><table><thead>{LIST_HEADER}</thead>{LI

我正在通过JS链接为SharePoint列表构建自定义布局。。。 目前,我正在独自呈现,但对于一些更复杂的项目(分类法、URL等),能够触发SharePoint的自定义呈现将是非常棒的

对于单字段类型,这是否可能

var csListView = csListView || {};

csListView.ListBody = '<div class="datagrid"><table><thead>{LIST_HEADER}</thead>{LIST_BODY}<tfoot><tr><td colspan="{FIELD_COUNT}"><div class="paging">{PAGINATION}</div></td></tr></tfoot></table></div>';
csListView.HeaderRow = '<tr>{HEADER_ITEMS}</tr>';
csListView.HeaderItem = '<th>{HEADER_ITEM}</th>';
csListView.BodyRow = '<tr class="{ALT_CLASS}">{LIST_ITEMS}</tr>';
csListView.BodyItem = '<td>{LIST_ITEM}</td>';

csListView.CustomizeFieldRendering = function ()
{
    var fieldJsLinkOverride = {};
    fieldJsLinkOverride.Templates = {};
    fieldJsLinkOverride.Templates.Body = csListView.RenderBody;

    SPClientTemplates.TemplateManager.RegisterTemplateOverrides(fieldJsLinkOverride);
};

csListView.RenderBody = function (ctx) {
    var colspan = ctx.ListSchema.Field.length;
    var html = '';
    var itemHtml = '';
    var itemsHtml = '';
    var rowHtml = '';
    var bodyHtml = '';
    var paginationHtml = '';
    var headerItemsHtml = '';
    var headerHtml = '';

    //Render Header fields
    for (var i = 0; i < ctx.ListSchema.Field.length; i++) {
        var sortUrl =   location.search + '?SortField=' + ctx.ListSchema.Field[i].RealFieldName  + '&SortDir=Desc';//ctx.HttpRoot + ctx.listUrlDir + '/&' + ctx.ListSchema.FieldSortParam
        var item = '<a href="' +  sortUrl + '">' + ctx.ListSchema.Field[i].DisplayName + '</a>';
        headerItemsHtml += csListView.HeaderItem.replace('{HEADER_ITEM}', ctx.ListSchema.Field[i].DisplayName);
    }
    headerHtml = csListView.HeaderRow.replace('{HEADER_ITEMS}', headerItemsHtml);

    //Go through all rows
    for (var i = 0; i < ctx.ListData.Row.length; i++) {
        var cssClass = (i % 2 == 0) ? 'alt' : '';

        //Go through all fields
        itemsHtml = '';
        for (var j = 0; j < ctx.ListSchema.Field.length; j++) {
            var item = csListView.renderField(ctx, ctx.ListSchema.Field[j], ctx.ListData.Row[i]);

            itemHtml = csListView.BodyItem.replace('{LIST_ITEM}',item);
            itemsHtml += itemHtml;
        }       
        rowHtml = csListView.BodyRow.replace('{LIST_ITEMS}',itemsHtml);
        rowHtml = rowHtml.replace('{ALT_CLASS}', cssClass);
        bodyHtml += rowHtml;
    }

    html = csListView.ListBody.replace('{LIST_BODY}', bodyHtml);
    html = html.replace('{PAGINATION}', renderPaging(ctx));
    html = html.replace('{FIELD_COUNT}', colspan);
    html = html.replace('{LIST_HEADER}', headerHtml);

    return html;
};


csListView.renderField = function (ctx, fieldData, rowData) {
    return rowData[fieldData.RealFieldName];
}
var csListView=csListView | |{};
csListView.ListBody='{LIST_HEADER}{LIST_BODY}{PAGINATION}';
csListView.HeaderRow='{HEADER_ITEMS}';
csListView.HeaderItem='{HEADER_ITEM}';
csListView.BodyRow='{LIST_ITEMS}';
csListView.BodyItem='{LIST_ITEM}';
csListView.CustomizeFieldRendering=函数()
{
var fieldJsLinkOverride={};
fieldJsLinkOverride.Templates={};
fieldJsLinkOverride.Templates.Body=csListView.RenderBody;
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(fieldJsLinkOverride);
};
csListView.RenderBody=函数(ctx){
var colspan=ctx.ListSchema.Field.length;
var html='';
var itemHtml='';
var itemsHtml='';
var rowHtml='';
var bodyHtml='';
var paginationHtml='';
var headerItemsHtml='';
var headerHtml='';
//渲染头字段
for(var i=0;i
要更改字段的视图,可以使用以下命令

var ctx={};
模板={};
ctx.Templates.Fields={'ColumnName':{'View':''};
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(ctx)