Gridview链接变成了javascript:__ doPostBack

时间:2012-03-18 17:19:26

标签: javascript asp.net gridview postback

请告诉我哪个代码或进程将gridview链接转换为

之类的格式

的javascript:__ doPostBack('ctl00 $ ...

1 个答案:

答案 0 :(得分:1)

Asp.Net使用名为_doPostBack()的__doPostback javascript函数。功能是 -

function __doPostBack(eventTarget, eventArgument) {
 if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
  theForm.__EVENTTARGET.value = eventTarget;
  theForm.__EVENTARGUMENT.value = eventArgument;
  theForm.submit();
 }

此功能用于将表单提交回服务器。 _doPostBack通过使用隐藏变量__EVENTTARGET__EVENTARGUMENT接受参数 - 事件目标和事件参数。这告诉服务器哪个控件导致了回发,并且还将适当的参数传递给服务器。

如果您的aspx页面中有此代码 -

<asp:LinkButton ID="lnkButton" runat="server">LinkButton</asp:LinkButton>

相应生成的标记将为 -

<a id="LinkButton1" href="javascript:__doPostBack('lnkButton','')">LinkButton</a>

因此,假设您单击链接按钮,该页面将由__doPostBack()函数进行回发。然后,在服务器上重新创建页面,页面上具有相应的控制状态。要获取页面上每个控件的状态,请使用viewstate等机制。加载页面后,服务器将计算并呈现响应标记。