asp.net总结(4)

关于窗体回发:
需要注意我们在页面的源代码是看不到服务器端的任何消息,同样看不到控件在服务器端的事件但是。。。
首先是服务器控件,当我们将服务器控件比如TextBox或者DropDownList的AutoPostBack="True",
这时候源码中就会增加
<input name="TextBox2" type="text" onchange="__doPostBack('TextBox2','')" language="javascript" id="TextBox2" style="Z-INDEX: 110; LEFT: 672px; POSITION: absolute; TOP: 104px" />
<select name="DropDownList1" onchange="__doPostBack('DropDownList1','')" language="javascript" id="DropDownList1" style="Z-INDEX: 104; LEFT: 472px; POSITION: absolute; TOP: 112px">
用于与回发到服务器端执行服务器端事件
如果是服务器端的按钮控件,在源码中就不会出现这个,因为服务器端的按钮控件源码中的类型是sumbit,本身就是提交给服务器端
<input type="submit" name="Button1" value="Button1" id="Button1" style="Z-INDEX: 101; LEFT: 160px; POSITION: absolute; TOP: 112px" />
其次介绍一下HTML控件,当然它是没有回发的,我们要说的是将HTML控件转换为WEB控件,这时候就会出现于服务器端的交互,在HTML窗体元素中只有Button按钮和ImageButton才可以引起窗体回发,
当我们给该HTML按钮设置了服务器端的事件以后,才会出现
onclick="__doPostBack('Button2','')这句,也就是与服务器的 回发,否则仍然是一个客户端的按钮,
<input language="javascript" onclick="__doPostBack('Button2','')" name="Button2" id="Button2" type="button" style="Z-INDEX: 108; LEFT: 160px; POSITION: absolute; TOP: 312px" value="Button2" />
其它的HTML控件比如text与select就没有相应的回发,如果要实现就需要加上相应的form.sumbit()方法或者自己手动添加__doPostBack('Select1',''),有点没有必要这样操作,所以不介绍了
阅读更多
上一篇js源码--键盘控制
下一篇js源码--div实现marquee
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭