1、用三个input表单元素分别模拟ASP.NET WebForms 中的 ViewState,TextBox和Button
HTML页面:
下面模拟:Button的点击事件
2、当Button被点击时,先触发如下JS脚本
3、脚本运行结束后,ViewState的Value被改变,记录Button被Click了,然后提交表单(也就是ASP.NET WebForms中的所谓的回传)
4、用如下的一般处理程序模拟ASP.NET WebForms的后置代码(也就是.aspx.cs文件)
5、通过ViewState的Value去判断是哪个控件的哪个事件,然后调用相应的代码,具体代码都有注释。
6、下面是处理Button的Click事件的代码(也就是平时我们点击按钮注册时,后台产生的所谓的事件)
整个过程就这么简单。
最后理一理:
其实ASP.NET WebForms中所谓的事件就是,
1、先通过JS改变VIEWSTATE(其实就是一个隐藏域)的VALUE(做了序列化)
2、回传(也就是提交表单)
3、判断是哪个控件触发的事件(其实就是遍历所有表单元素)
4、判断触发了控件的哪个事件(通过ViewState的值)
5、执行事件(调用相应控件相应事件对应的处理代码)
第一次发帖,如有不对的地方,还请各位大神给予指出。