Откройте новое окно с asp.net - PullRequest
2 голосов
/ 04 января 2009

Я новичок в этой вещи asp.net, но здесь идет.

Я попал в ImageButton, и при его нажатии я хочу, чтобы изображение отображалось в другом окне. Если я могу избежать использования ajax, я бы хотел это сделать. Если возможно, хотелось бы сделать окно модальным, но все же избегать ajax, так как я еще не готов смешать больше технологий.

Ответы [ 7 ]

3 голосов
/ 04 января 2009

Существующие ответы с JavaScript хороши, но только для того, чтобы предложить альтернативу - не могли бы вы использовать HyperLink (с набором ImageUrl , чтобы вы все еще получали изображение) и установить его Целевое свойство вместо?

0 голосов
/ 04 января 2009

Спасибо за все ответы! Я закончил тем, что использовал лайтбокс Я нашел этот пример http://neutrongenious.wordpress.com/2007/09/08/lightbox-for-asp-net-2-0/

И это прекрасно работает

0 голосов
/ 04 января 2009

Возможно, стоит указать на две соответствующие записи в превосходном FAQ по #javascript в EFNet :

  1. Правильное использование всплывающих окон - доступность!
  2. Как сделать всплывающее окно того же размера, что и мое изображение?
  3. Как создать настраиваемое диалоговое окно «ОК» или что-то подобное? - модальные окна не так полезны и что-то вроде предложенного Lightbox или аналогичных сценариев было бы лучше "модального" "options
  4. Правильное использование ссылок - эта ссылка была только частично по теме, но предыдущие ответы, в которых использовался псевдопротокол "javascript:", сделали это необходимым: это никогда не требуется и не полезно на веб-странице, которая должен работать через браузеры. В конце концов, JavaScript является стандартным (и единственным) языком сценариев.
0 голосов
/ 04 января 2009

ИМХО, лучшая практика показа изображения - на той же странице вверху контента. Я лично пользуюсь Lightbox . Вы можете найти документацию на их странице, поэтому вам будет легко интегрировать их код JavaScript.

0 голосов
/ 04 января 2009

Следующий javascript сделает то, что вы ищете:

window.open('page.html','WindowTitle','width=400,height=200')
0 голосов
/ 04 января 2009

Вы можете использовать свойство OnClientClick в ImageButton:

<asp:ImageButton ... OnClientClick="javascript:window.open('url_to_image');" >

Но это всплывающее окно не будет модальным.

0 голосов
/ 04 января 2009

Примерно так:

<asp:ImageButton ID="imbJoin" CssClass="btn-find" AlternateText="Find" ToolTip="Find" runat="server" ImageUrl="~/library/btn-find.gif" onClick="javascript:popUp("ServicesLocator.aspx")" />

Ресурс: http://www.experts -exchange.com / Программирование / Языки / .NET / ASP.NET / Q_22832169.html

Используя ImageButton, вам нужно использовать JavaScript, чтобы открыть его в новом окне. Вы также можете посмотреть на событие OnClientClick

...