【问题标题】:Get Distinct data from SharePoint List and push in in table从 SharePoint 列表中获取不同的数据并推入表中
【发布时间】:2019-05-16 23:14:22
【问题描述】:

我有一个从 SharePoint 列表中获取值并将其显示在表格上的代码。下面是代码:

$(document).ready(function() {    
getItems();    
});  


function getItems() {  

$.ajax({  

    async: true,  
    url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/GetByTitle('Global')/items?$filter=Title eq Domain",  
    method: "GET",  

    headers: {  
        "accept": "application/json;odata=verbose",  
        "content-type": "application/json;odata=verbose"  

    },  
    success: function(data) {  
        data = data.d.results;  
        console.log(data);  
        $.each(data, function(index, value) {  

            if (value.Title == null) {
                value.Title = "";}
            else{
                value.Title = value.Title ;}

            if (value.Grouped_x0020_OPUs == null) {
                value.Grouped_x0020_OPUs = "";}
            else{
                value.Grouped_x0020_OPUs = value.Grouped_x0020_OPUs;}       


            if (value.Phase == null) {
                value.Phase = "";}
            else{
                value.Phase = value.Phase ;}

            if (value.Stage == null) {
                value.Stage = "";}
            else{
                value.Stage = value.Stage ;}


            var html = "<tr><td>" + value.Title + "</td><td>" + value.Grouped_x0020_OPUs + "</td><td>" + value.Phase + "</td><td>" + value.Stage + "</td></tr>";  
            $('.table tbody').append(html);

        });

        table = $('#table_id').DataTable();

    },  
    error: function(error) {  
        console.log(JSON.stringify(error));  

    }  

})  


}

上面的代码将获取列表中的所有值。我的问题是如何从列表中获取值,例如 value.Grouped_x0020_OPUs 并删除重复的值,然后将其显示在表上?

请帮助我。非常感谢。

【问题讨论】:

  • 您能详细说明重复项吗?我不确定你现在得到的结果。
  • 例如,value.Grouped_x0020_OPUs 在列表中有 'Corporate' 等三个相同的名称。如果我使用上面的代码,它将获取并显示所有三个“公司”。我只想在数据表上显示一个“公司”。

标签: javascript sharepoint distinct-values


【解决方案1】:

不支持。请参考here。您可以尝试将 caml 与 group by 子句一起使用,也可以像这样实现自己的客户端逻辑;

var groupedOPUs= []; //should be declared at the beginning of the success function.
if (groupedOPUs.indexOf(value.Grouped_x0020_OPUs) < 0){
        var html = "<tr><td>" + value.Title + "</td><td>" + value.Grouped_x0020_OPUs + "</td><td>" + value.Phase + "</td><td>" + value.Stage + "</td></tr>";  
        $('.table tbody').append(html);
        groupedOPUs.push(value.Grouped_x0020_OPUs);
}

【讨论】:

    猜你喜欢
    • 2014-10-09
    • 2016-01-02
    • 2014-11-02
    • 2012-04-21
    • 1970-01-01
    • 1970-01-01
    • 2011-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多