DataFormWebPart 访问 WSS3.0 中项目的早期版本

发布于 2024-09-09 03:21:43 字数 443 浏览 6 评论 0原文

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

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

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

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

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

乔纳森

I am running WSS3.0 and have a custom list which contains versioning on a couple of fields. When I click on an item and I view the item page I see the history of all the fields which I have made changes to. This works fine as expected.

I have also created a page using Microsoft Office Sharepoint Designer and using a DataFormWebPart I have created a page that shows all the items in the list in a list view, I have also changed the XSL node of the DFWP to display the datain a way that my client wants.

The issue that I have is, it is only showing the latest version of the item record e.g. some of the fields are blank as the client did not update those fields the last time that the item was saved. I can fully understand why it is not showing these previous versions of the item but is there anyway that I can change an option in the webpart that will return that last non blank version of the field?

If this is not possible does anybody know if it is possible to change the edit page for the item so that it defaults certain fields to have the previous value of the field.

Many thanks for you ideas in advance

Jonathan

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

悲凉≈ 2024-09-16 03:21:43

我最终能够在页面底部添加以下 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 替换为您要自动填充的文本框的标题。

I eventually was able to add the following jQuery code at the bottom of the page (using Sharepoint Designer). You will also need to add a link at the top of the page to include a link to the jQuery code (or you can install it as a feature).

<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>

Then you just have to replace the CONTROL_TITLE with the title of the text box that you want to auto fill.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文