Configuración de una página de aplicación para ECMAScript

Última modificación: lunes, 20 de junio de 2011

Hace referencia a: SharePoint Foundation 2010

Disponible en SharePoint Online

Puede incluir código personalizado que use el modelo de objetos de ECMAScript (JavaScript, JScript) en un bloque de script de una página .aspx, o bien puede crear un archivo .js independiente que incluya el código y haga referencia a él desde la página .aspx. El siguiente ejemplo supone que ha creado un proyecto SharePoint Foundation con una página de aplicación en Microsoft Visual Studio 2010, según se describe en el tema sobre la creación de páginas de aplicación para SharePoint. Visual Studio crea la página de aplicación en %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LAYOUTS.

Para obtener IntelliSense para el espacio de nombres SP del editor de código de Visual Studio, agregue etiquetas <script> que hagan referencia a los archivos .js de SharePoint Foundation instalados en el directorio \LAYOUTS. Incluya referencias a SP.Core.Debug.js, SP.Debug.js y SP.Runtime.Debug.js, como muestra el ejemplo.

Nota importanteImportante

En Microsoft Visual Studio 2010, las etiquetas <script> que se agregan son un componente de tiempo de diseño que se usa para proporcionar IntelliSense para el modelo de objetos de cliente de SharePoint Foundation. No obstante, para crear el proyecto, debe convertir en comentarios las etiquetas <script>. Además, pruebe la página en el servidor para asegurarse de que la página no tiene errores.

Si escribe código que modifica datos de SharePoint Foundation, incluya un control FormDigest para crear un resumen para la validación de seguridad de la página.

<%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %>
<%@ Import Namespace="Microsoft.SharePoint.ApplicationPages" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" 
  Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" 
  Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="asp" Namespace="System.Web.UI" 
  Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestServerOM1.aspx.cs" 
  Inherits="TestServerOM1.Layouts.TestServerOM1.TestServerOM1" DynamicMasterPageFile="~masterurl/default.master" %>

<asp:Content ID="PageHead" ContentPlaceHolderID="PlaceHolderAdditionalPageHead" runat="server">

<script type="text/ecmascript" src="/_layouts/SP.Core.js" />
<script type="text/ecmascript" src="/_layouts/SP.Debug.js" />
<script type="text/ecmascript" src="/_layouts/SP.Runtime.Debug.js" />

<script language="ecmascript" type="text/ecmascript">

          function onQuerySucceeded(sender, args) {
              alert('Title: ' + this.oWebsite.get_title() + ' Decription: ' + this.oWebsite.get_description());
          }

          function onQueryFailed(sender, args) {
              alert('request failed ' + args.get_message() + '\n' + args.get_stackTrace());
          }

          function retrieveWebSite() {
              var clientContext = new SP.ClientContext.get_current();
              this.oWebsite = clientContext.get_web();
              clientContext.load(this.oWebsite);
              clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
          }
      </script>
</asp:Content>

<asp:Content ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server">

    <SharePoint:FormDigest ID="FormDigest1" runat="server"></SharePoint:FormDigest>

    <input id="Button1" runat="server" Text="Retrieve Web Site" OnClick="retrieveWebSite()" />
  
</asp:Content>

<asp:Content ID="PageTitle" ContentPlaceHolderID="PlaceHolderPageTitle" runat="server">
Application Page
</asp:Content>

<asp:Content ID="PageTitleInTitleArea" ContentPlaceHolderID="PlaceHolderPageTitleInTitleArea" runat="server" >
My Application Page
</asp:Content>

Para obtener información acerca de los archivos .js de depuración que se incluyen en una instalación de SharePoint Foundation, vea Distribución e implementación del modelo de objetos cliente.

Vea también

Conceptos

Procedimiento para trabajar con sitios web

Introducción a la recuperación de datos

Tareas comunes de programación

Otros recursos

Biblioteca de clases de cliente

Biblioteca de clases de ECMAScript