powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Новое окно
6 сообщений из 6, страница 1 из 1
Новое окно
    #33645781
amkar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток!
Возникла вот какая проблема: в гриде по ссылке должно открыться новое окно:

private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if (e.CommandName.ToUpper().Equals("INFOTEXT"))
{
Session["Curtext"]=e.Item.Cells[0].Text;
Response.Redirect("statya.aspx");
}

}


<asp:TemplateColumn ItemStyle-Width="50%" HeaderText="Заголовок">
<ItemTemplate>
<asp:LinkButton ID="cmdText" CommandName="INFOTEXT" Runat="server">
<%# DataBinder.Eval(Container.DataItem, "title")%>
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>


Делаю у формы target=_blank, и вроде живи да радуйся, ай нет!
При всех PostBack форма сама же открывается в новом окне (когда меняю страницу грида, например).

Пробовал onclick=window.open(...), но где тогда сделать Session["Curtext"]=e.Item.Cells[0].Text?
...
Рейтинг: 0 / 0
Новое окно
    #33645967
gerss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
amkarВсем доброго времени суток!
Возникла вот какая проблема: в гриде по ссылке должно открыться новое окно:

private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if (e.CommandName.ToUpper().Equals("INFOTEXT"))
{
Session["Curtext"]=e.Item.Cells[0].Text;
Response.Redirect("statya.aspx");
}

}


<asp:TemplateColumn ItemStyle-Width="50%" HeaderText="Заголовок">
<ItemTemplate>
<asp:LinkButton ID="cmdText" CommandName="INFOTEXT" Runat="server">
<%# DataBinder.Eval(Container.DataItem, "title")%>
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>


Делаю у формы target=_blank, и вроде живи да радуйся, ай нет!
При всех PostBack форма сама же открывается в новом окне (когда меняю страницу грида, например).

Пробовал onclick=window.open(...), но где тогда сделать Session["Curtext"]=e.Item.Cells[0].Text?

Можно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
		{
			if (e.CommandName.ToUpper().Equals("INFOTEXT"))
			{   
				Session["Curtext"]=e.Item.Cells[ 0 ].Text;
				Page.RegisterStartupScript("script", "<script>window.open(...)</script>");
			}

         	}
...
Рейтинг: 0 / 0
Новое окно
    #33646190
amkar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уже лучше, вот только почему-то PostPack происходит при выполнении скрипта
...
Рейтинг: 0 / 0
Новое окно
    #33646209
gerss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
amkarУже лучше, вот только почему-то PostPack происходит при выполнении скрипта
PostBack проходит не при выполнении скрипта, а до него. Проходит PostBack, отрабатывает событие, страница рендерится и после загрузки выполняется скрипт. Далее происходит загрузка окна, которое ты открыл.
...
Рейтинг: 0 / 0
Новое окно
    #33646229
amkar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ок сспасибо
...
Рейтинг: 0 / 0
Новое окно
    #33646334
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
осталось понять целесообразность применения здась сессии
посмотрите /topic/122389#1000180


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Новое окно
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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