集計値のHTMLをJSリンクで修正する

ひさびさの投稿になっちゃいましたが生きてます。

昨年より以下のようにいろいろと話題になっておりますが、集計値列でHTMLを出力しビューの見栄えを整えるワザが使えなくなってしまいましたよね。

June 13th 2017 Microsoft blocked handling HTML markup in SharePoint calculated fields – how to get the same functionality back – SharePoint Stack Exchange

で、ついにこの波が我が職場にもやってまいりまして大騒ぎになっておりましたが、クライアントサイドでクイックに対応したいということでJSリンクを使って修正することにしました。
以下、サンプルコードです。
※ビュー上に複数の集計値列でHTMLを出力しているパターンとなります。

(function () {
var htmlColumnContext = {};
htmlColumnContext.Templates = {};
htmlColumnContext.Templates.Fields = {
"field1": {
"View": field1ViewTemplate
},
"field2": {
"View": field2ViewTemplate
},
"field3": {
"View": field3ViewTemplate
}
};
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(htmlColumnContext);
})();
function field1ViewTemplate(ctx) {
var ret1 = ctx.CurrentItem["field1"];
return ret1;
}
function field2ViewTemplate(ctx) {
var ret2 = ctx.CurrentItem["field2"];
return ret2;
}
function field3ViewTemplate(ctx) {
var ret3 = ctx.CurrentItem["field3"];
return ret3;
}
view raw fixHTML.js hosted with ❤ by GitHub

こんないい加減なコードでいいのか・・・と思いますが、ちゃんと動くのですよ、これが。
これを、集計値列を表示しているビューにJSリンクとして設定してください。
JSリンクの設定方法は、以下にあります。
JSリンクを使ってビューにニコちゃんマークを表示してみた

ビューがいっぱいあると大変ですが、今すぐ!直さなければ!というときのご参考にしてください。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください