第一种:
直接把要嵌入的JS文件属性设置为“嵌入的资源”。
protected override void OnInit(EventArgs e)
{
base.OnInit (e);
if(!base.Page.IsStartupScriptRegistered("Script"))
{
Assembly assembly = typeof(TestControl).Assembly;
StreamReader reader = null;
reader = new StreamReader(assembly.GetManifestResourceStream(typeof(TestControl),"test.js"));
base.Page.RegisterStartupScript("Script",reader.ReadToEnd());
}
}
第二种:
创建相同类名的资源文件,然后在Data出的name设置为Test,value为js的内容。
protected override void OnInit(EventArgs e)
{
base.OnInit (e);
if(!base.Page.IsStartupScriptRegistered("Script"))
{
ResourceManager resx = new ResourceManager(base.GetType());
base.Page.RegisterStartupScript("Script",resx.GetResourceSet(System.Globalization.CultureInfo.CurrentCulture,true,true).GetString("Test"));
}
}
上面两种方式都是在控件类中输出JS代码,也可以自定义HttpHandler来生成Js代码。