通过js调用服务器事件
<body>
<div>
<form id="Form1" name="Form1">
<input type="hidden" name="__EVENTTARGET" /> <input type="hidden" name="__EVENTARGUMENT" />
<script language="javascript" type="text/javascript">
function __doPostBack(eventTarget,eventArgument)
{
var theform;
if (window.navigator.appName.toLowerCase().indexOf("microsoft") > -1)
{
theform = document.Form1;
}
else
{
theform = document.forms["Form1"];
}
theform.__EVENTTARGET.value = eventTarget.split("$").join(":");
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
}
</script>
<input type="button" name="bt" value="bt" onclick="__doPostBack('Button1','')"></input>
<input type="button" name="bt1" value="bt1" onclick="__doPostBack('Button2','')"></input>
</form>
<form id="form2" runat="server">
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<asp:Button ID="Button1" name="Button1"
runat="server" Text="Button1" OnClick="Button1_Click" />
<asp:Button ID="Button2" name="Button2"
runat="server" Text="Button2" OnClick="Button2_Click" />
</form></div>
</body>
大家都知道一个页面不能有两个runat=server的表单,但是通过js调用服务器事件就可以突破这种限制,可以在一个没有runat=server的表单里调用一个在runat=server的表单中所有控件触发的服务器事件。