SharePoint 2013はDiscion boardビューに非標準フィールドの値を表示します.
3119 ワード
本論文では、SharePoint 2013のDiscion boardビューにおいて、非標準フィールドの値を表示する方法を説明する.
Discion boardビューは15\TEMPLATE\LAYOUTS\sp.ui.discussions.jsが表示を担当していますが、直接ウェブpartの中でJSLinkをカバーすると、このファイルの役割をカバーします.
ですから、もし SharePoint 2013のDiscion boardビューで非標準フィールドの値を表示するには、15\TEMPLATE\LAYOUTS\sp.ui.discussions.debug.jsを変更する必要があります.
たとえばmyColumnフィールドを表示するなら、次のようにします.
1.この方法にフィールド名を入れる SP.UI.Discrissions.Helpers.$1 f=function SP_UIDicussionsHelpers$1 f($p 0、$p 1)
5.IISの再起動
6.Discion boardを開くと、myCloumnフィールドが見られます.
Discion boardビューは15\TEMPLATE\LAYOUTS\sp.ui.discussions.jsが表示を担当していますが、直接ウェブpartの中でJSLinkをカバーすると、このファイルの役割をカバーします.
ですから、もし SharePoint 2013のDiscion boardビューで非標準フィールドの値を表示するには、15\TEMPLATE\LAYOUTS\sp.ui.discussions.debug.jsを変更する必要があります.
たとえばmyColumnフィールドを表示するなら、次のようにします.
1.この方法にフィールド名を入れる SP.UI.Discrissions.Helpers.$1 f=function SP_UIDicussionsHelpers$1 f($p 0、$p 1)
ar $v_2 = ['ID', 'PermMask', 'Created', 'Modified', 'Title', 'FSObjType', 'ContentTypeId', 'FileRef']
=> var $v_2 = ['ID', 'PermMask', 'Created', 'Modified', 'Title', 'FSObjType', 'ContentTypeId', 'FileRef', 'myColumn']
2.変更方法 $2 u_0:function SP_UIDicussionsPostBehavior$2 u_0($p 0、$p 1) $2u_0: function SP_UI_Discussions_PostBehavior$$2u_0($p0, $p1) {
this.populateFolderMetalineItems($p1);
$p0.addCssClass('ms-comm-metalineList ms-noList');
$p0.renderBeginTag('ul');
// Inorder to display myColumn
if (this.jsonItem["myColumn"]) {
$p0.addCssClass("ms-comm-metalineItemSeparator");
$p0.addCssClass("ms-comm-metalineItem");
$p0.renderBeginTag("li");
$p0.write(spMgr.RenderFieldByName(this.$0_0, "myColumn", this.jsonItem, this.$0_0.ListSchema))
$p0.renderEndTag()
}
for (var $v_0 = 0, $v_1 = this.$R_0.length; $v_0 < $v_1; $v_0++) {
if ($v_0 !== $v_1 - 1) {
$p0.addCssClass('ms-comm-metalineItemSeparator');
}
$p0.addCssClass('ms-comm-metalineItem');
$p0.renderBeginTag('li');
$p0.write(this.$R_0[$v_0]);
$p0.renderEndTag();
}
$p0.renderEndTag();
}
3.変更方法 $2 y_0:function SP_UIDicussionsPostBehavior$2 y_0($p 0)$2y_0: function SP_UI_Discussions_PostBehavior$$2y_0($p0) {
// Inorder to display myColumn
var myColumn = spMgr.RenderFieldByName(this.$0_0, "myColumn", this.jsonItem, this.$0_0.ListSchema);
if (myColumn) {
$p0.addCssClass("ms-metadata");
$p0.addCssClass("ms-comm-cmdSpaceListItem");
$p0.renderBeginTag("span");
$p0.write(replyCount);
$p0.renderEndTag();
}
$p0.addCssClass('ms-metadata');
$p0.addCssClass('ms-comm-cmdSpaceListItem');
$p0.renderBeginTag('span');
var $v_0 = spMgr.RenderFieldByName(this.$0_0, 'Created', this.jsonItem, this.$0_0.ListSchema);
$p0.write($v_0);
$p0.renderEndTag();
}
4.SharePoint designer 2013を使ってDiscationリストを開き、そのViewのソースコードを編集し、JSLinkを検索し、JSLinkのsp.ui.discussions.jsを sp.ui.discussions.debug.jsは、保存します.5.IISの再起動
6.Discion boardを開くと、myCloumnフィールドが見られます.