| 适用于: Microsoft® ASP.NET 前提条件:本文假设读者熟悉 ASP.NET。 难度: 2 摘要:尽管从技术角度讲,ASP.NET 服务器控件的所有功能都可以在服务器端执行,但通常情况下通过添加客户端脚本可以大大增强服务器控件的可用性。本文将探讨服务器控件发送客户端脚本的两种方法,还将构建两个使用这些技术的服务器控件:PopupGreeting,一个在首次加载的 Web 页面上显示带有特定消息的客户端模式对话框的服务器控件;ConfirmButton,一个增强的 Button Web 控件,如果用户点击此按钮,则在发回 Web 窗体前向用户显示一个 Javascript confirm() 的对话框。(本文包含一些指向英文站点的链接。) 下载 InjectingClientSidescript.msi。 目录_topic1" target=_self>简介 _topic2" target=_self>使用 RegisterStartupscript() 和 RegisterClientscriptBlock() 添加客户端脚本块 _topic3" target=_self>探讨 IsStartupscriptRegistered() 和 IsClientscriptBlockRegistered() _topic4" target=_self>从 ASP.NET 服务器控件发送客户端脚本块 _topic5" target=_self>发送 ASP.NET 服务器 Web 控件的 HTML 属性 _topic6" target=_self>小结 _topic1>简介 尽管从技术角度讲,Microsoft® ASP.NET 服务器控件的所有功能都可以在服务器端执行,但通常情况下通过添加客户端脚本可以大大增强服务器控件的可用性。例如,ASP.NET 验证 Web 控件可以在服务器端执行所有的验证检查。但是,对于高版本浏览器,验证 Web 控件也会发送客户端脚本,以在客户端进行验证。这就是说,这些浏览器的用户可以获得响应效果更好的动态体验。 在开发 ASP.NET 服务器控件时,您不妨问问自己,如何才能通过使用客户端脚本来增强可用性。一旦找到可行的方案,其他要做的就是增强服务器控件的功能,以使其发送合适的客户端脚本。 ASP.NET 服务器控件可以发送两种客户端脚本: 客户端脚本块通常是用 Javascript 编写的,其中通常包含在发生特定的客户端事件时执行的函数。客户端 HTML 属性提供将客户端事件与客户端脚本联系在一起的方法。例如,以下的 HTML 页面中包含了客户端脚本块,脚本块中包含了名为 doClick() 的函数。该页面同时还包含一个按钮(通过 <input> HTML 元素创建),这个按钮的 onclick 属性与 doClick() 函数绑定。也就是说,只要用户单击该按钮,就开始执行 doClick() 函数中的客户端代码。在本示例中,将显示一个弹出式对话框(图 1)。 <html> <body> <form> <script language="Javascript"> <!-- function doClick() { alert("You clicked me!"); } // --> </script> <input type="button" onclick="doClick()" value="Click Me!" /> </form> </body>&[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>
|