C# 将JavaScript添加到SharePoint中SPList的新表单

C# 将JavaScript添加到SharePoint中SPList的新表单,c#,javascript,sharepoint,C#,Javascript,Sharepoint,我在SharePoint中有一个SPList,我想为其编辑NewForm.aspx。我想以编程方式向表单中添加一些Java脚本作为Web部件 我该怎么做 感谢您的帮助。在SharePoint designer的“列表和库”部分打开列表。在列表设计器视图中,您将看到与列表关联的表单列表,通常会列出一个“NewForm.aspx”表单。右键单击此项,然后选择“在高级模式下编辑文件”以公开用于表单的ASP.Net/HTML标记 现在,在页面标记中添加自定义块。我通常建议您查找id为“placehold

我在SharePoint中有一个SPList,我想为其编辑NewForm.aspx。我想以编程方式向表单中添加一些Java脚本作为Web部件

我该怎么做


感谢您的帮助。

在SharePoint designer的“列表和库”部分打开列表。在列表设计器视图中,您将看到与列表关联的表单列表,通常会列出一个“NewForm.aspx”表单。右键单击此项,然后选择“在高级模式下编辑文件”以公开用于表单的ASP.Net/HTML标记

现在,在页面标记中添加自定义块。我通常建议您查找id为“placeholder main”的asp:content元素。在内容占位符元素打开后立即将脚本添加为第一个元素,如下所示:

<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">
<script type='text/javascript' language='javascript'>
$(document).ready(function(e) { alert('my custom script has loaded'); });
</script>
..
.. Existing markup
..
</asp:Content>

$(document).ready(函数(e){alert('my custom script has loaded');});
..
.. 现有标记
..

我上面的示例假设您的母版页中存在jQuery,以便在表单完全加载后显示消息。

在SharePoint designer的“列表和库”部分中打开列表。在列表设计器视图中,您将看到与列表关联的表单列表,通常会列出一个“NewForm.aspx”表单。右键单击此项,然后选择“在高级模式下编辑文件”以公开用于表单的ASP.Net/HTML标记

现在,在页面标记中添加自定义块。我通常建议您查找id为“placeholder main”的asp:content元素。在内容占位符元素打开后立即将脚本添加为第一个元素,如下所示:

<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">
<script type='text/javascript' language='javascript'>
$(document).ready(function(e) { alert('my custom script has loaded'); });
</script>
..
.. Existing markup
..
</asp:Content>

$(document).ready(函数(e){alert('my custom script has loaded');});
..
.. 现有标记
..
我上面的示例假设您的母版页中存在jQuery,以便在表单完全加载后显示消息。

如果您不想(或不能)使用SharePoint Designer,可以将

?工具面板视图=2

在URL的末尾,在浏览器的设计模式下打开“查看/编辑/新建表单”

如果您不想(或不能)使用SharePoint Designer,您可以将

?工具面板视图=2

在URL的末尾,在浏览器的设计模式下打开“查看/编辑/新建表单”



嗯,我有我的SPContentType并尝试使用“NewFormUrl”,但在我的服务器上找不到newform.aspx。我简直不知道该去哪里找。@JamesMontagne:对我来说这是个公平的问题,这个人显然没有经验。我有我的SPContentType,并试图使用“NewFormUrl”,但我在服务器上找不到newform.aspx。我简直不知道该去哪里找。@JamesMontagne:对我来说这是个公平的问题,这家伙显然没有经验。@Servy:不一定,我提供的示例只会在整个页面/DOM加载后执行,所以在头部设置块没有任何好处。最初的海报也没有说明任何标准的符合性。我并没有说它需要在头上,只是说它应该。现在大多数浏览器允许你做不应该做的事情,但这并不意味着你应该鼓励这种行为。我从新表单复制了代码,并将其粘贴到vs2010的aspx文件中。设置新表单的代码是contentType.NewFormUrl=@“C:\Hannes\Calendarwork\HannesCalendar\NewFormjs.aspx”;但是当我激活该功能时,我得到了“服务器错误在'/'应用程序.运行时错误”。@carruw:这些表单在物理.aspx文件中不存在,它们存储在网站集内容数据库中。请确保您进行了更改,并使用SharePoint designer工具将其提交回来。:-)@Servy:并不总是必要的,我提供的示例只会在加载整个页面/DOM之后执行,因此在头部添加块没有任何好处。最初的海报也没有说明任何标准的符合性。我并没有说它需要在头上,只是说它应该。现在大多数浏览器允许你做不应该做的事情,但这并不意味着你应该鼓励这种行为。我从新表单复制了代码,并将其粘贴到vs2010的aspx文件中。设置新表单的代码是contentType.NewFormUrl=@“C:\Hannes\Calendarwork\HannesCalendar\NewFormjs.aspx”;但是当我激活该功能时,我得到了“服务器错误在'/'应用程序.运行时错误”。@carruw:这些表单在物理.aspx文件中不存在,它们存储在网站集内容数据库中。请确保您进行了更改,并使用SharePoint designer工具将其提交回来。:-)已与SharePoint合作很长时间。这是我第一次看到这个提示。谢谢。请您解释一下,它如何在
newform.aspx
页面上添加脚本?@AlexZhukovskiy-您以编辑模式打开页面(如图所示),然后在页面上添加一个Centent Editor Web部件(CEWP)来保存您的脚本。哦,我找到了。我认为这不是“程序性的”。我找到了一个真正的自动化解决方案:导出newform.aspx,根据需要修改它,然后在list shema中使用它并部署它。@Alex抱歉,我实际上不记得了。我更改了我的工作,从我的简历中删除了所有与SharePoint相关的内容,删除了所有SP项目,并发誓不再触碰它。所以现在我对aspnetcore和Rust项目很满意,所以我为你祝福。我已经与SharePoint合作很长时间了。这是我第一次看到这个提示。谢谢。请您解释一下,它如何在
newform.aspx
页面上添加脚本?@AlexZhukovskiy-您以编辑模式打开页面(如图所示),然后在页面上添加一个Centent Editor Web部件(CEWP)来保存您的脚本。哦,我找到了。我认为这不是“程序性的”。我找到了一个真正的自动化解决方案:导出newform.aspx,根据需要修改它,然后在list shema中使用它并部署它。@Alex抱歉,我实际上不记得了。我改变了我的工作,从我的简历中删除了所有与SharePoint相关的内容,删除了所有SP项目,并发誓永远不使用它