использование __EVENTARGUMENT в обратной передаче - PullRequest
3 голосов
/ 10 февраля 2010

Это может быть основной вопрос. Я знаю, что __doPostback() функция принимает 2 аргумента, eventtarget и eventargs. Eventtarget используется для идентификации элемента управления, который вызывает обратную передачу. Тогда какой смысл использовать eventargs в функции __doPostback?

Я видел, что функция __doPostback всегда устанавливала скрытое поле __EVENTARGUMENT в ничто для любых обратных передач, вызванных элементами управления с даже автоматической обратной передачей в true или элементом управления типа linkButton.

Пожалуйста, дайте мне ваш вклад.

Заранее спасибо!

Ответы [ 2 ]

3 голосов
/ 10 февраля 2010

Если вы хотите назначить _EVENTARGUMENT, вы можете вручную запустить постбэк с javascript:

  javascript:__doPostBack('MyControl', 'myArgument');

Этот сайт объясняет, как ASP.NET использует механизм обратной передачи: http://aspalliance.com/895_Understanding_the_JavaScript___doPostBack_Function.5

2 голосов
/ 10 февраля 2010

__EVENTARGUMENT - это любые соответствующие аргументы события, касающиеся элемента управления, выполняющего обратную передачу. Для большинства элементов управления нет специальных аргументов события, и поскольку аргументы события различны для каждого элемента управления, передается null, чтобы представить аргумент по умолчанию, который должен быть создан во время последовательности событий.

Попробуйте посмотреть __EVENTARGUMENT, который передается, когда у вас есть специальный элемент управления (например, кнопка ссылки в виде сетки, которой назначено имя команды / commandargument / etc). Вы должны начать видеть, как значения передаются.

...