SharePoint 2010 - 内容编辑器Web部件复制条目

时间:2011-02-16 18:30:21

标签: javascript sharepoint-2010

我在SharePoint 2010内容编辑器Web部件中使用Javascript来插入Silverlight对象。我需要这样做而不是使用Silverlight Web部件,因为Silverlight Web部件当前未启用。这完全是使用Javascript完成的。​​

当我稍后去编辑CEWP内部的Javascript时出现问题 - 我可以看到请求生成Silverlight对象的原始Javascript我可以,这是奇怪的部分,CEWP具有所有生成的HTML Silverlight对象就在那里附加到scrept。

所以现在,当我保存时,我保存脚本以生成Silverlight对象和之前生成的HTML有效地复制Silverlight对象。如果我再次编辑,那么我现在将拥有三个Silverlight对象,依此类推。

您可以使用以下示例代码自行查看此操作:

  1. 将新的内容编辑器Web部件添加到SharePoint 2010中的页面
  2. 编辑源HTML
  3. 添加以下代码:

    <script type="text/javascript">document.write("Hello<br/>");</script>

  4. 保存网页部分,您就完成了。现在,继续编辑CEWP。每次单击“编辑Web部件”时,“Hello”都将附加到您的脚本中。

    如何使用Javascript插入DOM元素,而不是在CEWP中显示生成的HTML?

3 个答案:

答案 0 :(得分:11)

它不起作用,因为SharePoint 2010不希望您将脚本复制并粘贴到编辑器中。相反,您应该将脚本放在存储在SharePoint中的txt文件(是的,这是正确的txt文件)中,然后指向CEWP以使用该文件作为源。

首先,创建一个包含所有代码(包括Javascript和HTML)的文件 - 基本上是您通常粘贴到内容编辑器中的所有内容。确保将Javascript包装在<script type="text/javascript">标记中并保存文件使用.txt扩展名,例如“scripts.txt”。

接下来,将CEWP添加到您的页面并选择“编辑Web部件”。在右侧的内容编辑器窗格中,在“内容链接”下,将URL添加到您的txt文件,然后单击“应用”,您就完成了。

有关SharePoint 2010中此更改的完整说明,请查看以下URL:http://sptwentyten.wordpress.com/2010/08/31/insert-javascript-into-a-content-editor-web-part-cewp/

答案 1 :(得分:0)

使用jQuery - 可能比document.write更安全,它可以在页面下方进一步破解javascript。

或者使用此链接中的代码将纯HTML放入CEWP而不是使用JavaScript:

http://karinebosch.wordpress.com/silverlight-meets-sharepoint/walkthrough-2-hosting-silverlight-3-in-a-content-query-web-part/

答案 2 :(得分:0)

另一个选项是 HTML表单Web部件(在Forms类别中)。这可以用于连接到其他Web部件,但更简单的是它可以用于直接在Web部件中编辑JavaScript。似乎内容编辑器Web部件的规则不适用于HTML表单Web部件,因此它允许更大的灵活性。

Microsoft的更多信息在这里:

http://office.microsoft.com/en-us/sharepoint-server-help/use-the-html-form-web-part-to-filter-and-display-data-in-another-web-part-HA101791813.aspx#_Toc274731120