webearly

导航

将JS脚本内嵌到组件中的几种方法

将JS脚本内嵌到组件中的几种方法:

  1.打开VS,新建一个WebApplication1项目[这里新建网站也可以],采用默认设置。

  2.在当前解决方案中添加新项目。(类库: JSLib)

  添加后,默认的会有一个Class.cs文件,我们将其重命名为:【ReferenceClientScript.cs】,这在后面我们会用它。

  3.由于新建的是类库,所以要添加引用:System.Web,这在后我们会用到。

  4.在JSLib中添加一个JS文件,取默认设置。自动有一个JScript1.js文件。

  5.编写JS脚本【JScript.js】。

  我们这里只是一个简单的演示,所以脚本代码尽量简单。Hello,World!,一段最简单的类,目的在演示,当然你可以写的更复杂些。

  JSScript.js 代码:

以下是代码片段:
  function Hello(){
  alert("Hello,world!");
  }

  6.设置JScript.js属性->生成操作为【嵌入的资源】

  7.在JSLib项目的AssemblyInfo.cs文件最后添加一行代码:【注意JSLib.JScript1.js,JSLib是js所在项目的命名空间】

  [assembly: WebResource("JSLib.JScript1.js", "text/javascript")]

  8.编写JS脚本注册类【ReferenceClientScript.cs】。

  ReferenceClientScript.cs 代码:

以下是代码片段:

  using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;
  namespace JSLib
  { www.yzjjx.com
  public class ReferenceClientScript : System.Web.UI.WebControls.WebControl
  {
  protected override void OnPreRender(EventArgs e)
  {
  if (this.Page != null)
  {
  ClientScriptManager manager = this.Page.ClientScript;
  manager.RegisterClientScriptResource(typeof(ReferenceClientScript), "JSLib.JScript1.js");
  }
  base.OnPreRender(e);
  }
  }
  }

  9.在WebApplication1中添加项目引用。编译后生成JSLib.dll

  10.在要调用脚本的页面注册JSLib.dll

以下是代码片段:
<%@ Register Assembly="JSLib" Namespace="JSLib" TagPrefix="JSLibInstance" %>
  
 11.引用脚本。
以下是代码片段:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication1._Default" %> yzyedu.com

<%@ Register Assembly="JSLib" Namespace="JSLib" TagPrefix="JSLibInstance" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>无标题页</title>

</head>

<body>

<form id="form1" runat="server">

<asp:ScriptManager ID="ScriptManager1" runat="server">

</asp:ScriptManager>

<div>

<JSLibInstance:ReferenceClientScript id="js1" runat="server"></JSLibInstance:ReferenceClientScript>

  JS封装到DLL 并在页面调用 Demo。

以下是代码片段:
<input id="Button1" type="button" value="button" onclick="Hello();" />

</div>

</form>

</body>

</html>

posted on 2011-02-16 13:58  early  阅读(625)  评论(1编辑  收藏  举报