Я использую ASP.NET MVC, частичные представления и диалоги. Я делаю ajax-запрос к серверу, и он возвращает мне частичное представление. Затем я использую: $ ('# elementTag'). Html (returnData) для пополнения ограничивающих элементов div. Однако это частичное представление содержит внутреннюю работу для диалога, заключенного в элемент формы, вместе с остальным содержимым частичного представления. Javascript, также содержащийся в частичном представлении, после того, как документ готов, устанавливает диалог.
Я начал с этого метода проектирования: связал содержимое диалога с частичным представлением, чтобы все было вместе.
Теперь я начал с этой проблемы, потому что у меня были проблемы с одним из моих диалогов. Я мог бы инициализировать элемент формы в диалоговой форме до его отображения, но когда пользователь запросил сохранить данные из диалогового окна, все элементы, полученные с использованием serializeArray, были пусты.
Используя Firebug, я заметил, что каждый раз, когда я запрашивал частичное представление, содержащее диалоговую форму, он создавал другую форму того же типа (т. Е. Определенно утечка памяти). Мой HTML был заменен, и я считаю, что сценарий также дублировался.
Так что либо я все делаю неправильно, либо здесь проблема. Я использую модальное диалоговое окно для запроса информации, сериализации данных из диалогового окна и отправки их на сервер.
Какая лучшая практика здесь? Должен ли я объединить все содержимое диалога в мастер сайта и весь javascript в один файл js или есть способ заменить все?