Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Подскажите как сделать чтобы в GridView, который заполняется динамически, по нажитию на ссылку в одном из столбцов показывалось всплывающее окно, а его закрытие осуществлялось по клику по области вне этого окна. Пишу на WebForms, всплывающие окна умею отображать с помощью ModalPopUpExtender, но как их потом скрыть, не могу понять. Буду рад любому совету, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2015, 15:46 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Проверить сейчас не могу, навскидку попробуйте такой вариант в теге <body> добавить Код: html 1. modalpopap_id- id вашего серверного попапа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2015, 12:43 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2015, 13:23 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Березовский, Zoria - спасибо за ответы. Делаю как в примере, только вместо id использую BehaviorID. Это работает когда не в гриде. В гриде не работает из-за того что в каждой его строке ModalPopUpExtender имеет один и тот же BehaviorID. Сделал в _RowCreated присвоение BehaviorID = "MPE"+e.Row.RowIndex. Соответственно javascript у меня имеет вид: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. Но это не работает. Судя по ошибке из-за того, что $find('MPE'+k) имеет тип оbject, а у него нет метода hide(). Не знаете как это обойти можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2015, 15:56 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Интересно что если вместо $find('MPE'+k).hide() написать $find('MPE0').hide(), то в первой строке все будет работать как надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2015, 16:04 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Oleg_OlegИнтересно что если вместо $find('MPE'+k).hide() написать $find('MPE0').hide(), то в первой строке все будет работать как надо. ну так там и ищите ;) хотя конечно, у меня другой вопрос, нужен ли в каждой строке грида свой mpe, нельзя ли это как-то обойти.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2015, 10:28 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
не получается пока найти решение. И как без mpe сделать всплывающее окно по клику на колонке в строке грида, тоже пока не нашел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2015, 11:09 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Я бы предложил использовать один скрытый див. Делать его видимым по клику на ссылку, позиционировать рядом с положением курсора (по координатам). В этом решении давайте попробуем просто скрыть по названию класса: задайте ему Код: css 1. Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2015, 11:33 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
БерезовскийЯ бы предложил использовать один скрытый див. Делать его видимым по клику на ссылку, позиционировать рядом с положением курсора (по координатам). В этом решении давайте попробуем просто скрыть по названию класса: задайте ему Код: css 1. Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Я правильно понял, что предлагается использовать один див вместо modalPopupExtender в каждой строке? Если да, то подскажите как на этот див навесить onShown, у меня ошибка, что у дива нету такого метода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2015, 12:38 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Попробую набросать пример... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2015, 12:39 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Oleg_Oleg, Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2015, 13:01 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Oleg_Oleg, вот о чем я говорил. Двигаем и делаем видимым один див. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2015, 13:44 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Березовский, спасибо, работает. Осталось только понять как данными заполнить всплывающее окно. Zoria, пока не разобрался с вашим примером. После var mpe = $find("gv1_mpe1_" + k) в mpe всегда null, не могу пока понять почему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 09:18 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
А что вам туда надо передать? ( значения какие то?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 09:46 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
БерезовскийА что вам туда надо передать? ( значения какие то?) Да из БД, теперь когда всплывающим окном стал div, находящийся вне грида, надо наверное как-то аяксом данные получать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 10:02 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Можно наверное поупражняться и с передачей параметра( ов) в функцию. Типа такого Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 10:54 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Oleg_OlegБерезовский, спасибо, работает. Осталось только понять как данными заполнить всплывающее окно. Zoria, пока не разобрался с вашим примером. После var mpe = $find("gv1_mpe1_" + k) в mpe всегда null, не могу пока понять почему. а вы свой пример на основе моего полностью привести можете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 11:49 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
ZoriaOleg_OlegБерезовский, спасибо, работает. Осталось только понять как данными заполнить всплывающее окно. Zoria, пока не разобрался с вашим примером. После var mpe = $find("gv1_mpe1_" + k) в mpe всегда null, не могу пока понять почему. а вы свой пример на основе моего полностью привести можете? Заработало так, как я делал в самом начале, но с вашим кодом в методе onShown. Получается что $find(sender._id) отрабатывает именно так как нужно. Спасибо большое за помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 12:19 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Oleg_OlegZoriaпропущено... а вы свой пример на основе моего полностью привести можете? Заработало так, как я делал в самом начале, но с вашим кодом в методе onShown. Получается что $find(sender._id) отрабатывает именно так как нужно. Спасибо большое за помощь. ну ок.. а то я как правило, неработающих примеров не делаю, стало интересно что к чему ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 12:21 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
Березовский, ваш пример тоже работает, спасибо. Если не трудно, подскажите пожалуйста еще как сделать, чтобы всплывающее окно показывалось там где нужно в случае если на странице присутствует скроллинг. Если не скролил страницу, то окно появляется там где нужно, но если есть вертикальный скрол, то всплывающее окно улетает куда-то за пределы страницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 12:23 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
автор стили не совсем корректно я задал. вот одна из ссылок в гугле http://habrahabr.ru/post/238449/ Думаю, найдете при желании еще :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 15:29 |
|
||
|
Закрытие всплывающего окна из GridView по клику вне его
|
|||
|---|---|---|---|
|
#18+
стили не совсем корректно я задал. вот одна из ссылок в гугле http://habrahabr.ru/post/238449/ Думаю, найдете при желании еще :)[/quot] Да, спасибо, я уже понял в какую сторону копать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2015, 16:16 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=39051770&tid=1356241]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 272ms |
| total: | 415ms |

| 0 / 0 |
