开云体育app平台:
ASP.NET Framework包含三个用于向服务器端提交表单的控件:Button、LinkButton和ImageButton。这三个控件拥有同样的功能,但每种控件的外观界面不同。
本文就带着大家学习怎么样在页面中使用这三种控件。然后,学习怎么样关联客户端脚本和服务器端Button控件,以及怎么样去使用Button控件把一个表单传到不是当前页的页面。最后,学习怎么样处理Button控件的Command事件。
Button控件用来向服务器端提交表单的按钮。例如,代码清单1中的页面包含一个Button控件。点击这个Button控件,则更新由Label控件显示的时间(见图1)。
LinkButton控件象Button控件一样,用于把表单回传给服务器端。但是,不像Button控件生成一个按钮,LinkButton控件生成一个链接。
代码清单2包含了一个简单的表单。这个表单包含一个LinkButton控件,用于向服务器端提交表单并显示表单字段的内容(见图2)。
点击LinkButton调用把表单传回服务器端的JavaScript _doPostBack()方法。当提交表单时,所有表单字段的值也被传回给服务器端。
代码清单3 中的页面包含一个ImageButton控件,它把一个简单的表单传回服务器端(见图3)。
注解:辅助功能规定要求每一幅图片都包含替代文本。此外,要记住有些用户会关闭浏览器的图片功能,以获得更快的网上冲浪体验。
注意,ImageButton控件的Click事件处理程序不同于其他两个按钮控件。传递给事件处理程序的第二个参数是ImageClickEventArgs类的实例。此类有下面两个属性:
可以使用ImageButton控件创建简单的图像映射。代码清单4中的页面包含一个显示一个靶子图片的ImageButton控件。点击靶子的中央,就会显示一个成功信息(见图4)。
注解:ImageButton可拿来创建服务器端的图像映射。残障人士不可以使用服务器端的图像映射。创建ImageMap最好的方法是使用用于创建客户端的图像映射的ImageMap控件。本章下一节将讨论ImageMap控件。
·DescriptionUrl——用于提供指向包含该图片详细描述的页面的链接(复杂的图片要求可访问)。
三种Button控件都支持OnClientClick属性。能够正常的使用此属性来执行点击按钮时所需的任何客户端代码。代码清单5的页面展示了怎么样去使用OnClientClick属性来显示一个确认对线 ButtonOnClientClick.aspx
图5显示客户端确认对线中的Button控件包含一个OnClientClick属性,在客户端点击该按钮时,执行JavaScript脚本。该脚本显示一个确认对话框。如果确认对话框返回False,那么取消按钮点击事件,包含该按钮的表单也不会传回服务器端。
注解:在Visual Web Developer中,扩展属性下面会出现绿色波浪线警告,不过可以安全地忽视这个警告。
作为使用FindControl()方法从前页面中获取某个控件的替代方法,能够最终靠页面属性来暴露控件。代码清单9中的页面通过SearchString属性暴露了TextBox txtSearch。这个页面将表单数据发送到代码清单10中的ButtonSearchResultTyped.aspx页面。
执行跨页面提交时,能够正常的使用下面两种方法中的任意一种方法。第一种方法提供从前页面获取值的弱类型方法,第二种方法提供强类型方法。
例如,代码清单11中的页面包含一个简单的搜索表单。form标签设置页面的默认按钮为Button控件的btnSearch。
打开代码清单11中的页面,输入搜索词,敲击键盘上的回车键,表单就会提交到服务器端。因为btnSearch按钮是页面的默认按钮,点击键盘上的回车键就会执行btnSearch_Click()事件处理程序。
注解:也可以为Panel控件指定默认按钮。Panel控件将在本章后面部分讨论。
例如,代码清单12中的页面包含两个Button控件和一个BulletedList控件。点击第一个按钮,BulletedList控件显示的项以正序排列;点击第二个按钮,BulletedList控件显示的项以倒序排列(见图6)。