在ASP.NET一个用户控件中的JavaScript注册 [英] Register JavaScript from within a UserControl in ASP.NET

查看:67
本文介绍了在ASP.NET一个用户控件中的JavaScript注册的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我声明我在用户控件(ASCX)的设计页面的JavaScript。是否有一个注册在头节这个JavaScript块的方法吗?我不想用ClientScript.RegisterClientScriptBlock,因为我不希望我的声明中的JavaScript code-后面。我也不能把它(完全)转移到一个单独的文件,因为我用商业逻辑来创建它。

I declare my javascript in the design page of a usercontrol (ascx). Is there a way to register this javascript block in the Head section? I don't want to use ClientScript.RegisterClientScriptBlock as I don't want to declare my javascript in the code-behind. I also cannot move it (entirely) into a separate file, because I use business logic to create it.

推荐答案

我会说,ClientScript.RegisterClientScriptBlock是注册用户从/自定义控件脚本的方式。但是当你不想把脚本在code-的背后,你可以写在ASCX页相关code服务器标记内。例如,

I would say that ClientScript.RegisterClientScriptBlock is the way to register scripts from user/custom controls. But as you don't want to put the script in code-behind, you can write the relevant code in ascx page inside server tags. For example,

<script runat="server">

protected override OnPreRender(sender as object, e as EventArgs)
{
   base.onPreRender(sender, e);

   string script;
   // Logic to build the script goes here

   this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "Key_" + this.ClientID, script, true);
}

</script>

这篇关于在ASP.NET一个用户控件中的JavaScript注册的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆