powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / форма постоянно возвращается в начало
4 сообщений из 4, страница 1 из 1
форма постоянно возвращается в начало
    #34012364
seeerg_23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня на форме можество обектов размещено. Есть горизонтальная полоса прокрутки. Опускаю её вниз. работаю с данными. По какому-либо из событий (выделению в гриде строки, удалению строки, редактированию данных) форма авто оказывается вначале, т.е гориз полоса прокрутки вверху. Очень неудобно каждый раз её опускать вниз. Как отменить это действие формы (или полосы прокрутки), которое происходит по любому событию????
...
Рейтинг: 0 / 0
форма постоянно возвращается в начало
    #34012382
TZUK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такая же фигня... при перелистывании календаря на след месяц, форма перепрыгивает в начало...
...
Рейтинг: 0 / 0
форма постоянно возвращается в начало
    #34012697
Dimon aka Manowar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хранитель состояния Scroll'ов на странице

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
...
Рейтинг: 0 / 0
форма постоянно возвращается в начало
    #34027527
seeerg_23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Куда вставить этот кусочек кода, чтобы форма не возвращалась вначало???
Вставил перед Page_Load - не применился, всё равно возврат вначало!!!

namespace xSaveScroll
{
[ToolboxData("<{0}:xSaveScroll runat=server></{0}:xSaveScroll>"),Description("Контрол который сохраняет позиции всех скролов находящихся на странице")]
public class xSaveScroll: HiddenField
{
protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
RegisterScript();
base.Render(writer);
Page.ClientScript.RegisterStartupScript(Page.GetType(), "Scroll2", "LoadState();", true);
Page.ClientScript.RegisterStartupScript(Page.GetType(), "Scroll3", "document.getElementById('" + Page.Form.ClientID + "').onsubmit=function(){SaveState();};", true);
}
private void RegisterScript()
{
string Script;
Script = "function SaveState(){";
Script += "var Ctrls=document.getElementsByTagName('*');";
Script += "x=Ctrls.length;";
Script += "var i;";
Script += "for(i=0;i<x;i++){";
Script += "if (Ctrls .scrollTop!=null && Ctrls.scrollLeft!=null){";
Script += "if (Ctrls.scrollTop!=0 || Ctrls.scrollLeft!=0)";
Script += "document.getElementById ('" + this.ClientID + "').value+=Ctrls.id+','+Ctrls.scrollTop+','+Ctrls.scrollLeft+';';}}}";
string Script2;
Script2 = "function LoadState() {";
Script += "var Ctrls=document.getElementsByTagName('*');";
Script2 += "x=Ctrls.length;";
Script2 += "mass=document.getElementById ('" + this.ClientID + "').value.split(';');";
Script2 += "var i;var j;for(i=0;i<mass.length-1;i++) {";
Script2 += "m2=mass.split(',');if (m2.length==3){for(j=0;j<x;j++){";
Script2 += "if (m2[0]==Ctrls[j].id)";
Script2 += "{Ctrls[j].scrollTop=m2[1];";
Script2 += "Ctrls[j].scrollLeft=m2[2];";
Script2 += "}}}}}";
Page.ClientScript.RegisterStartupScript(Page.GetType(), "Scroll", Script + Script2, true);
}
}
}
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / форма постоянно возвращается в начало
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]