zoukankan      html  css  js  c++  java
  • SHAREPOINT 2013 列表之间相互关联

     修改内容

    1.增加列表设置,隐藏Aid字段操作

    SharePoint 列表之间相互关联

    例如两张列表之间的父子关系。

    思路如下:

    列表中新增列表项后会有一个唯一的ID,我们获取到该ID赋予子表即可将两张列表相互关联。

    效果图如下:

    实现起来也是很简单的。下面来动手实践下。

    首先我们要定位到显示页面。也就是DispForm.aspx

    因为只有显示页面和编辑页面才有会有列表项ID。新建页面是没有ID生成的。

    新建两张列表。。。

    注意:新建列表后,需要对列表进行设置,添加Aid栏(列),为了页面好看可以设置成隐藏。

    点开列表设置=>高级设置=>启用内容管理

    点击项目后进入内容类型

     

    点击Aid栏(列)后如下图

    页面设置基本到此结束。下面需要在spd里手动去操作一些东西。

    打开SharePoint Designer(SPD) 找到父列表的显示页面

    在webpart下新增一个按钮。

    SPD13取消了视图。。。

    但是我们可以用F12 去查看位置。

    效果如下图:

    添加JS.

    这里的JS作用是获取当前URL 截取到ID 通过弹窗传到子表的新建页面。效果如下:

    在子表的NewForm.aspx 页面 添加JS

    JS根据当前URL截取到ID,然后赋予到子表的Aid字段。

    整个新建逻辑做完后,我们需要考虑的是如何显示呢?

    接下来我们回到父表的显示页面 DispForm.aspx 

    在按钮下面插入 显示项目表单

    然后我们可以发现SPD上多出了个数据视图工具

    在选项下面,我们可以设置添加删除列,分页,等等。。。

    到这一步的时候我们还需要把显示数据筛选一遍

    我们新建一个参数,取名为Aid,参数源为查询字符串,查询字符串的变量为ID

    然后我们发现在代码里面多出了一行

    我们设置筛选条件

    域名的Aid为 子表的新建字段Aid.

    值为我们前面所建的参数Aid。即查询字符串ID

    整个功能就完成了。

    唯一的代码就是两段JS了

    DispForm.aspx页面的JS

    注意 URL为子表 新建项目的URL 加上我们要传过去的Aid

    JS代码写的比较随意。。。

    function show()
    {
        var a=location.search;
        a = a.split("?");
        a = a[1].split("&");
        a =  a[0].split("=");
        //alert(a[1]);
        
        var options = {
                        url: "http://spserver/IT_center/Lists/B/NewForm.aspx?Source=http%3A%2F%2Fspserver%2FIT%5Fcenter%2FLists%2FB%2FAllItems%2Easpx&RootFolder=&Aid="+a[1],
                         600,
                        height: 480,
                        title: "新增列"
                    };
                  SP.UI.ModalDialog.showModalDialog(options);
        
    }
    
    </script>

    子表NewForm.aspx页面的JS

    根据当前URL截取到ID

    将ID值赋予到Aid字段。

    <script type="text/javascript">
    
    window.onload=function()//
    {
        show();
    }
    
    function show()
    {
        var a=location.search;
        a = a.split("&");
        a = a[2].split("=");
        
        document.getElementById("Aid_43bc1ca7-76dd-4ea6-ae50-da655f99d378_$TextField").value=a[1];
        document.getElementById("Aid_43bc1ca7-76dd-4ea6-ae50-da655f99d378_$TextField").disabled = true;
    }
    
    </script>
  • 相关阅读:
    Android 编程下 Eclipse 恢复被删除的文件
    Android 编程下背景图片适配工具类
    Android 编程下 Managing Your App's Memory
    Android 编程下代码之(QQ消息列表滑动删除)
    Android 编程下 Canvas and Drawables
    Android 编程下 AlarmManager
    Android 编程下去除 ListView 上下边界蓝色或黄色阴影
    Java 编程下字符串的 16 位、32位 MD5 加密
    C#枚举类型和int类型相互转换
    MVC和普通三层架构的区别
  • 原文地址:https://www.cnblogs.com/AsprosL/p/3865863.html
Copyright © 2011-2022 走看看