您的位置:首页 > Web前端 > JavaScript

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

2007-09-28 09:39 411 查看
我们一般喜欢在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);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: