Показывать одно и то же всплывающее окно на двух представлениях

#c# #asp.net #model-view-controller #layout #view

Вопрос:

Я создаю приложение mvc 5. У меня есть два представления .cshtml. Вид1 с компоновкой 1 и Вид2 с компоновкой 2. На Layout1 при некоторых условиях я показываю всплывающее окно, подобное

 <input type="button" id="btnpopu" value="Open Modeless popup" onclick="ShowPopup();" />  
<script type="text/javascript">  
    ShowPopup = function () {  
        window.open('/Home/OpenPopup', "PopupWindow", 'width=400px,height=400px,top=150,left=250');  
    }  
</script> 
 

Когда пользователь переходит в режим просмотра 2 нажатием кнопки или что-то в этом роде, мне нужно, чтобы всплывающее окно оставалось на месте.
Означает, что он все еще виден на Layout2
Есть какие-нибудь предложения ?

Ответ №1:

Вы также должны создать одно и то же всплывающее окно в layout1 для layout2 onload и отправить в него конкретные условия, которые вы хотите, я думаю, что единственный способ, которым вы не можете поддерживать состояние просмотра по запросу только с помощью одного и того же макета.

Комментарии:

1. Создавая одно и то же всплывающее окно в layout1 и layout2 ,я должен передавать всю информацию из созданного всплывающего окна в layout1 в новое всплывающее окно в layout2, когда пользователь изменяет представление. Это все усложняет. Нет ли другого способа, например, создать мастер-макет с помощью всплывающего кода поверх layout1 и layout2 ?

2. @assos40 хорошая идея, на самом деле я не знаю, давайте подождем еще ответов.