【问题标题】:DataFormWebPart accessing previous versions of an item in WSS3.0DataFormWebPart 访问 WSS3.0 中项目的早期版本
【发布时间】:2010-08-20 01:40:04
【问题描述】:

我正在运行 WSS3.0 并且有一个自定义列表,其中包含几个字段的版本控制。当我单击一个项目并查看项目页面时,我会看到我所做更改的所有字段的历史记录。这按预期工作正常。

我还使用 Microsoft Office Sharepoint Designer 和 DataFormWebPart 创建了一个页面,我创建了一个在列表视图中显示列表中所有项目的页面,我还更改了 DFWP 的 XSL 节点以显示数据我的客户想要的一种方式。

我遇到的问题是,它只显示最新版本的项目记录,例如一些字段是空白的,因为客户端在上次保存项目时没有更新这些字段。我可以完全理解为什么它没有显示这些以前版本的项目,但无论如何我可以更改 web 部件中的一个选项,该选项将返回该字段的最后一个非空白版本?

如果这是不可能的,是否有人知道是否可以更改项目的编辑页面,以便它默认某些字段具有该字段的先前值。

非常感谢您提前提出的想法

乔纳森

【问题讨论】:

    标签: sharepoint-designer wss-3.0 dataformwebpart


    【解决方案1】:

    我最终能够在页面底部添加以下 jQuery 代码(使用 Sharepoint Designer)。您还需要在页面顶部添加一个链接以包含指向 jQuery 代码的链接(或者您可以将其作为一项功能安装)。

    <script>
    jQuery.fn.GetLastUpdate = function () { 
      $updates = this.parent().next().clone();
      $("nobr", $updates).remove();
      $("a", $updates).remove();
      $("br", $updates).remove();
      $lastUpdate = $updates.text().split("(): ")[1]; //.find("a").replaceWith("##++##").text();
      this.text($lastUpdate);
      return $lastUpdate;
    }
    
    $("[title='CONTROL_TITLE']").GetLastUpdate();
    </script>
    

    然后您只需将 CONTROL_TITLE 替换为您要自动填充的文本框的标题。

    【讨论】:

      猜你喜欢
      • 2015-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-26
      • 2010-11-02
      相关资源
      最近更新 更多