【问题标题】:Get Row Data from custom list in Multiple Line Text HTML Editor Sharepoint 2010从多行文本 HTML 编辑器 Sharepoint 2010 中的自定义列表中获取行数据
【发布时间】:2019-08-02 20:02:38
【问题描述】:

我的 Sharepoint 2010 自定义列表网格中有一个多行文本列。我的列是(EmployeeName、EmployeeIDNumber、EmailLink)。 EmailLink 列是一个多行文本字段,其中我有一个锚标记:

<a href="website.com">John Doe</a>

我想用来自 EmployeeName 的值动态填充 Anchor 标记的 Text 值。

我尝试将 javascript 添加到 EmailLink 列的 HTML 编辑器。当我尝试保存时,Sharepoint 2010 会删除添加的 javascript,包括 Script 标签。

这就是我看到解决方案工作的方式:

<a href="website.com" id="myEmailID">John Doe</a>

<script>
  function onLoad(){
    var rowData = SomeSharepointMethod();
    Document.GetElementByID("myEmailID").innerHTML = rowData["EmployeeName"];
  }
</script>

如果可能,是否有实现从该行读取所有数据的目标的 Sharepoint 文档或方法?

【问题讨论】:

    标签: javascript html sharepoint sharepoint-2010


    【解决方案1】:

    也许您可以使用列表中的计算列来构建超链接,然后在视图中显示该列。我快速搜索了一个示例,并从顶部的here 中提取了一个适用于 SharePoint 2010 的示例。

    但是,在更高版本的 SharePoint (2013+) 中,这种方法存在问题。查看this 发布的另一种可能有用的方法。

    此外,将您的脚本放入内容编辑器 Web 部件或脚本编辑器 Web 部件(如果 2010 年可用)可能有助于保护您的 JavaScript。

    我希望这会有所帮助,干杯!

    【讨论】:

      【解决方案2】:

      正如 dlbrandt 所指出的,我认为这是对您的问题的最佳回答,计算字段中的 HTML makrup 不受支持,因为 Microsoft 无意以这种方式使用这些字段 -> link

      在这种情况下,最好的选择是附加到此列的 jsLink,并带有一些 javascript 逻辑,可以更改此文件在新/编辑项表单中的行为和列表的快速编辑模式 -> jsLink tips

      【讨论】:

        【解决方案3】:

        我们可以使用jQuery代码来实现它,将代码添加到编辑表单页面的内容编辑器Web部件中。

        <script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
        <script type="text/javascript">
        $(function () {
            var employeeName=$("input[title='EmployeeName']").val();
            var emailLink=$(".ms-standardheader:contains('EmailLink')").closest("td").next().find("div[class^='ExternalClass'] a"); 
            $(".ms-standardheader:contains('" + fieldName + "')").closest("tr").find("input[id$='TextField_spSave']").val("<a href='"+emailLink.attr("href")+"'>"+employeeName+"</a>");
        });
        </script>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-08-09
          • 1970-01-01
          • 2016-07-25
          • 2013-09-08
          • 1970-01-01
          • 2018-02-08
          • 2013-03-14
          • 1970-01-01
          相关资源
          最近更新 更多