Обработчик связанных событий не запускает модальное диалоговое окно
У меня есть сценарий, который для меня звучит так же, как этот пост, и другие, которые спрашивали подобное... только я не понимаю, что другие получили от этого поста, так как моя реализация частично терпит неудачу.
В основном у меня есть страница с кнопкой для добавления новой записи. Нажмите кнопку Добавить, и откроется модальное диалоговое окно. Модальное диалоговое окно - это другой вид, чем родительская страница с полями, необходимыми для создания записи.
Нажатие кнопки "сохранить" (помните, что сохранить - это кнопка на модале. Я хочу, чтобы мое событие сохранения сработало, но оно никогда не срабатывает... и при этом я не получаю сообщений об ошибках в инструментах разработчика или в fiddler. Вот код для запуска модального режима и в комментариях ты увидишь, как далеко я доберусь.
$(document).ready(function ()
{
$("#new").click(function (e) //attach new button works great
{
e.preventDefault(); //seems to work
var ischanging = false; //hard coded vars for testing
var financierid = 0;
var detailsWindow = $("#window").data("kendoWindow");//handle if existing window
if (!detailsWindow)
{
// create a new window, if there is none on the page
detailsWindow = $("#window")
// set its content to 'loading...' until the partial is loaded
.html("Loading...")
.kendoWindow(
{
....removed options for brevity
})
.data().kendoWindow.bind('refresh', function (e)//attach refresh
{
alert('bound'); //this alert displays after modal loads
$('#save').click(function (event)
{
alert('dqewewr');
//this alert never fires nor anything subsequent
event.preventDefault();
// take over and perform ajax post
alert('parent');
$.ajax(
{
type: "POST",
url: "@Html.Raw(Url.Action("CreateEdit", "Finance"))",
data: $(this).serialize(),
success: function (data) {
//here we check if called resulted in Success/Failure
if (data.Result === "Success")
{
alert('Finis');
}
else {
//Show error message or whatever.
}
}
})
});
}).center();
}
detailsWindow.open();
});
});
Мой модал НЕ обернут в тег формы... не думал, что он мне понадобится, если я использую сообщение ajax...?
<span id="save" class="k-button" style="margin-right:10px;">Save</span>
Наконец, чтобы убедиться, что мне ясно. Моя родительская страница - Configure.cshtml, а мой модал - CreateEdit.cshtml.... другими словами, пока генерируется модал, мы нажимаем на контроллер, который выполняет свою работу, затем возвращает представление CreateEdit, заполненное моделью соответственно.
Это разочаровывало меня всю неделю, и, хотя я смог поработать над другими предметами между ними, я сейчас подхожу к мысли, что это одна из последних вещей перед выполнением этой задачи.
Большое спасибо за любую помощь.
Стивен Мюке... если вы видите это, измените свои комментарии, чтобы ответить, и я отмечу, что именно это решило проблему для меня.