【问题标题】:Sharepoint: Submit form data from Edit form and then redirect to display formSharepoint:从编辑表单提交表单数据,然后重定向到显示表单
【发布时间】:2015-08-20 05:38:54
【问题描述】:

这是用于将数据提交到自定义列表的自定义 Editform.aspx。一旦用户完成表单,他应该能够点击一个按钮甚至是 OK 按钮,并让 sharepoint 将表单数据提交到列表,然后重定向到项目显示表单 (dispform.aspx?ID='itemid') . 我可以通过操作 document.location.href 来获取当前项目的 ID。我尝试使用带有 __commit 和 __redirect 的 __doPostBack 在 javascript 中进行回发(重定向到 URL displayform?ID='itemid'),但是当重定向发生时,我看到更改没有更新!

任何人都可以做这样的事情吗?

【问题讨论】:

    标签: javascript sharepoint-2007 sharepoint-designer


    【解决方案1】:

    您可以通过修改 Source 查询字符串参数中的 URL 来让表单在发布后重定向到任何位置。使用 javascript,您可以在该查询字符串参数中查找特定 URL (/location/dispform.asp?ID=),如果它不存在,则将页面重定向到自身,但将 Source 参数填写到位置 w / 您要将它们发送到的 ID。

    最难的部分是在 javascript 中解析当前 URL + 参数。我发现有一些 JS 代码的 sn-ps 可以使它更容易。

    以这种方式重写 EditForm URL 的好处之一是“取消”按钮会将用户转到 DispForm 页面,而不是他们最初来自的页面,尽管大多数人可能使用后退按钮。

    【讨论】:

    • 我从来没有考虑过 Source 参数!!我会试试看,让你知道事情如何发展!! :) 谢谢!!
    【解决方案2】:

    这导致我解决了我的DispForm 上的表单操作问题,它不会将列表项 ID 带到自定义 EditForm。以下内容最终为我工作:

    onclick="javascript: {ddwrt:GenFireServerEvent(concat('__redirect={ProgEditForm.aspx?ID=+',$ListItemId,'}'))}"
    

    我有一个DispForm 参数,用于ListItemID

    参数来源:查询字符串
    查询字符串变量:ID
    默认值:0

    希望对其他人有所帮助,因为这几乎让我发疯了!

    【讨论】:

      猜你喜欢
      • 2021-09-03
      • 2021-07-20
      • 2012-08-25
      • 1970-01-01
      • 1970-01-01
      • 2015-05-06
      • 2013-04-13
      • 1970-01-01
      相关资源
      最近更新 更多