在这里,我给出了只有一个按钮的渲染 html 代码。
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
</title></head>
<body>
<form method="post" action="WebForm1.aspx" id="form1">
<div class="aspNetHidden">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMjA0OTM4MTAwNGRkfc0B7nRWOSrJt3Z50Lk+r5MmkK9k8GG8PK4FAT3XHhM=" />
</div>
<div class="aspNetHidden">
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAgLVlqviBgKM54rGBsRtS0Jrc+rNk0+mSfAVoJasek0SuUeZnx6RZWwMf1mq" />
</div>
<div>
<input type="submit" name="Button1" value="Button" id="Button1" />
</div>
</form>
</body>
</html>
html非常简单。当我们单击提交按钮时,将调用提交按钮的关联服务器端事件处理程序。
所以我有一个非常简单的问题,asp.net 引擎如何提取导致回发的按钮名称以及 asp.net 引擎如何调用按钮的事件处理程序服务器端。
在谷歌搜索了一下后,我发现 asp.net 引擎从 __VIEWSTATE 和 __EVENTVALIDATION 隐藏字段获取导致回发的按钮名称。是真的吗?如果是,那么 asp.net 引擎如何从 __EVENTVALIDATION 中提取按钮名称。请讨论这个 asp.net 内部问题。