Остановить постбэк в javascript - PullRequest
3 голосов
/ 14 мая 2009

У меня есть веб-форма ASP с JQuery Thickbox, у меня есть изображение, которое открывает Thickbox, когда пользователь нажимает.

однажды открыв карту, он показывает мне сетку с несколькими строками и кнопку для выбора одной, а после того, как пользователь выбирает запись, он возвращает на главную страницу выбранную запись и вызывает __doPostBack ()

НО! иногда в IE6 он продолжает загружать постбэк и никогда не заканчивается, мне приходится обновлять страницу, а когда он обновляется, он показывает все нормально. но я не хочу, чтобы постбэк остался загруженным, и это не всегда происходит.

Мне нужно вызвать __doPostBack, потому что мне нужно найти информацию, относящуюся к выбранной записи.

спасибо.

Ответы [ 4 ]

8 голосов
/ 18 марта 2011

Как мне это сделать; Как я это сделал:

<asp:LinkButton ID="linkKB" OnClientClick="absolutizeWidth(); return false;"  runat="server">Columns too small?</asp:LinkButton>

«return false» останавливает обратную передачу серверного элемента управления после выполнения функции javascript. Очень полезно.

1 голос
/ 14 мая 2009

ммм позвольте мне попробовать .. (я не говорю по-английски и не знаю правильных слов, чтобы объяснить, что я хочу, но я попробую: P)

Я вызываю javascript __doPostBack, НО требуется слишком много времени, чтобы ответить и остаться в режиме Загрузка ... Я хочу остановить обратную передачу, что-то вроде response.end, но в javascript.

если мой скрипт требует слишком много времени для выполнения, вызовите StopPostBack или что-то в этом роде.

спасибо.

1 голос
/ 06 октября 2009

Пытаетесь ли вы остановить публикацию обратно после обновления страницы или после возвращения Thickbox?

Если вы не хотите выполнять обратную передачу, когда пользователь запускает событие, вы можете просто вернуть false в этом даже обработчике.

Например, обычный способ прекратить отправку сообщений во время загрузки страницы выглядит примерно так:

onClick="if(SOMECONDITION != true) { return false; }" 

Это остановит запуск обратной передачи.

Если постбэк уже выполняется, и вы хотите попытаться прервать его (что, я думаю, то, о чем вы спрашиваете), вам нужно будет «остановить» загрузку страницы (как это делает JavaScript). Может быть, попробуйте это:

IE: window.document.execCommand («Стоп»); Другое (Mozilla и т. Д.): Window.stop ();

Я давно не пробовал это (и это не в моей голове), поэтому код может нуждаться в некотором массаже.

Если я полностью пропустил ваш вопрос, прошу прощения, вы можете уточнить?

1 голос
/ 14 мая 2009

Чтобы остановить постбэк в javascript, напишите «return false;» заявление.

Но я думаю, я просто не понял вашего вопроса, или вы задали его слишком непонятно. :)

...