0

CSRを使用してsharepointリストのスタイルを変更しようとしています。タイトル列に太字を適用したい。これらのコードを JS ファイルに追加し、JSLink(JavaScriptDisplayTemplate) として Web パーツに参照しました。ドキュメントの準備ができたら、renderTitleHandler と preRenderHandler の両方が登録され、preRenderHandler も正常に呼び出されます。ただし、renderTitleHandler は起動されません。

私のコード スニペットを見つけてください。

function renderTitleHandler(ctx) {
var fieldVal = ctx.CurrentItem[ctx.CurrentFieldSchema.Name];
var title = fieldVal.toString();
var html = '';
html += '<b>' + title + '</b>';
return html;
}

function preRenderHandler(ctx) {
     ctx.ListTitle =  '<b>' + ctx.ListTitle + '</b>';
}

(function() {

var overrideCtx = {};
overrideCtx.Templates = {};
overrideCtx.Templates.OnPreRender = preRenderHandler;

overrideCtx.Templates.Fields = {
    "Title" : {"View" : renderTitleHandler}
};

SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideCtx);
})();

前もって感謝します。関南。

4

1 に答える 1

0

可能性:

  • Minimal Download Strategy (mds) を無効にします。特定の OOTB スクリプトの背後にある非同期読み込みが原因で、JavaScript がブロックされることがあります。
  • debugger;-line を削除します (ブラウザの開発者ツールが開いているときにコードが機能する可能性はありますか?)

編集:私の開発環境で例を見つけました。引用符の間に View という単語があります:

linkFilenameFiledContext.Templates.Fields = {
        "Title": { "View": renderTitleHandler}
    };

それが役に立てば幸い

于 2016-06-27T07:41:17.643 に答える