如何检查评级设置是否由 SharePoint 2010 中的 Javascript 启用

How to Check Rating Settings is enabled or not by Javascript in SharePoint 2010?

本文关键字:SharePoint 是否 2010 中的 启用 Javascript 设置 何检查 检查      更新时间:2023-09-26

我已经创建自定义功能区按钮,我想检查评级设置是否启用。如果评级设置为启用,则启用功能区按钮,否则禁用功能区按钮。

这是获取当前列表的代码,但我没有看到任何检查评级设置的功能:

   var clientContext = new SP.ClientContext();
   var oWebsite = clientContext.get_web();
   var collList = oWebsite.get_lists();
   var listId = SP.ListOperation.Selection.getSelectedList();
   var sdlist = oWebsite.get_lists().getById(listId);
   clientContext.load(sdlist);
   function CheckRatingSettings(){
       var fields = sdlist.get_fields();
       //What next to check Ratting Setting, I can't find any function to get that
   }

我认为您无法从客户端 API 查询它。最好的办法应该是实现一个 WCF 服务,该服务在服务器上检查该服务,然后通过 javascript 查询该服务。

检查CKS开发人员工具,他们有一个可视化工作室的模板,可以在Sharepoint上创建WCF服务。

另一种选择是检查列表中是否存在"平均评级"字段,当您启用评级时,此字段将添加到列表中。请记住,该字段可能存在,但评级可能被禁用。

这没有经过测试(假设你的代码获得了正确的listid,大致如下:

var fields = slList.get_fields();
clientContext.load(fields );

function CheckRatingSettings(fields){
       for (var i = 0; i < fields.length; i++) {
           if (fields[i].internalName == "AverageRating") {
               return true;
           }
        }
        return false;
}