Ссылки Gridview превратились в JavaScript: __ doPostBack - PullRequest
0 голосов
/ 18 марта 2012

Скажите, пожалуйста, какой код или процесс превращает ссылки в виде сетки в такой формат, как

JavaScript: __ doPostBack ( 'ctl00 $ ...

1 Ответ

1 голос
/ 18 марта 2012

Asp.Net использует функцию JavaScript __doPostback, называемую _doPostBack (). Функция -

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. После загрузки страницы сервер вычисляет и отображает разметку ответа.

...