首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用SharePoint列表构建SPServices表

用SharePoint列表构建SPServices表
EN

Stack Overflow用户
提问于 2014-08-26 09:24:16
回答 1查看 5.2K关注 0票数 0

我正在尝试使用SharePoint列表中的数据构建一个SPServices表。我已经查看过这个站点,我的代码似乎与工作示例相匹配,但是我在我的站点上没有得到任何结果(我只看到文本表标题),也没有控制台中的错误。

下面是我的代码,谢谢。

代码语言:javascript
复制
<script type="text/javascript" src="URL/SiteAssets/Libraries/jquery-min.js"></script>
<script type="text/javascript" src="URL/SiteAssets/Libraries/SPServices-min.js.js"></script>
<script type="text/javascript" src="URL/SiteAssets/Libraries/underscore.js"></script>
<script type="text/javascript">

$(document).ready(function() {
  $().SPServices({
    operation: "GetListItems",
    async: false,
    listName: "{REMOVED}",
    CAMLViewFields: "<ViewFields><FieldRef Name='Project_x0020_ID' /><FieldRef Name='Title'/><FieldRef Name='Summary_x0020_Description'/><FieldRef Name='Technology_x0020_Stream'/></ViewFields>",
    completefunc: function (xData, Status) {
        $(xData.responseXML).find("[nodeName='z:row']").each(function() {
        var projectid = $(this).attr("ows_Project_x0020_ID");
        var title = $(this).attr("ows_Title");
        var sumdesc = $(this).attr("ows_Summary_x0020_Description");
        var techstream = $(this).attr("ows_Technology_x0020_Stream");
        var tableBody = document.getElementByID("tasksTB");
        tableBody.innerHTML = "<tr><td>" + projectid + "</td><td>" + title + "</td><td>" + sumdesc + "</td><td>" + techstream + "</td></tr>";
        });
    }
  });
});
</script>
<html>
<body>
<table>

   <thead>
       <tr>
           <th>Project ID</th>
           <th>Title</th>
           <th>Summary Description</th>
           <th>Technology Stream</th>
       </tr>
   </thead>

   <tbody id="tasksTB">
   </tbody>
</table>
</body>
</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-26 09:42:37

更改HTML代码如下所示。确保我删除了tbody并将id添加到整个表中。

代码语言:javascript
复制
<table id="task">
<thead>
   <tr>
       <th>Project ID</th>
       <th>Title</th>
       <th>Summary Description</th>
       <th>Technology Stream</th>
   </tr>
 </thead>
</table>

在完全的功能下,做这样的事情。在下面的代码中,我在第一行中空了表的tbody。然后,我使用数据仓库创建变量。

代码语言:javascript
复制
completefunc: function (xData, Status) {
$("#task > tbody").html(""); 
var datarows = "<tbody>";
$(xData.responseXML).find("[nodeName='z:row']").each(function() {
    var projectid = $(this).attr("ows_Project_x0020_ID");
    var title = $(this).attr("ows_Title");
    var sumdesc = $(this).attr("ows_Summary_x0020_Description");
    var techstream = $(this).attr("ows_Technology_x0020_Stream");
    datarows += "<tr><td>" + projectid + "</td><td>" + title + "</td><td>" + sumdesc + "</td><td>" + techstream + "</td></tr>";
    });
  datarows += "</tbody>";
  $("#task").append(datarows);
}

希望这能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25502302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档