关闭

net通过JAVASCRIPT来处理服务器控件

335人阅读 评论(0) 收藏 举报

    我们一般喜欢在ASP.NET页面上包含一些自己定制的JavaScript函数,这有两种方式。

    第一种方式是把JavaScript直接应用于ASP.NET页面上的控件,例如:TextBox1.Text = DateTime.Now.ToString().这行代码在终端用户的页面上显示了当前的日期和时间。问题是所显示的日期和时间对于生成页面的Web服务器来说是正确的。如果用户位于美国西部标准时区(PST),而Web服务器位于东部时区(EST),页面对于访问者来说就是不正确的。如果希望该时间对于浏览站点的任何人来说都是正确的,无论他们在世界的哪个角落,就可以使用JavaScript处理TextBox控件。如下:

onload="java script: document. forms [0] ['tb1']. value = Date();"

    该事件放置于BODY里面。

    第二种方式,ASP.NET使用新增的Page.ClientScript属性在ASP.NET页面上注册和使用JavaScript函数。这里有其中的3个方法。更多的方法和属性可通过ClientScript对象来获得,但这3个方法比较有用。其他方法可参阅SDK文档。
提示:.NET Framework 1.0/1.1中的Page.RegisterStartupScript和Page.RegisterClientScriptBlock方法现在已废弃。这两个用于注册脚本的方法需要一组键/脚本参数对。因为这两个方法比较复杂,很可能发生键名冲突。Page.ClientScript属性把所有的脚本注册都放在一起,使代码不容易出错。

使用Page.ClientScript.RegisterClientScriptBlock
RegisterClientScriptBlock方法可以把JavaScript函数放在页面的顶部。也就是说,该脚本用于在浏览器中启动页面。

    <asp:Button runat="server" OnClientClick="AlertHello()" Text="Button"  />   

    protected void Page_Load(object sender, EventArgs e)
    {
        string str = @"function AlertHello() { alert('hello world!');}";
        Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"MyScript",str,true);
    }

 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:177501次
    • 积分:3036
    • 等级:
    • 排名:第11446名
    • 原创:107篇
    • 转载:88篇
    • 译文:0篇
    • 评论:28条
    最新评论