#jquery-ui #jquery-ui-dialog
#jquery-ui #jquery-ui-dialog
Вопрос:
У меня есть div:
<div id="mproEmailAccountPopUp"></div>
Я объявляю диалог
var popupdiv = $( '#mproEmailAccountPopUp' );
popupdiv.dialog({
width: 650,
autoOpen: false,
modal: false
});
Затем я получаю некоторые данные html-формы (это работает нормально) с сервера и обновляю содержимое диалога:
function ShowEdit(accountId) {
$.ajax({
type: "POST",
async: false,
url: "<%=EmailHandler %>?action=GetEmailAccountEdit",
data: { accountId: accountId },
success: function (result) {
alert("Success GetEmailAccountEdit");
popupdiv.html(result);
popupdiv.dialog("open");
//popupdiv.dialog( "moveToTop" )
}
});
}
В первый раз это работает прекрасно, но если вы нажмете кнопку закрытия, а затем вызовете функцию. Диалоговое окно обновлено новым HTML, но вы не можете ввести ни в одно из текстовых полей. Я сузил его до модального наложения (поскольку оно работает с modal: false). Похоже, что z-индекс на 1 меньше, чем модальная форма, и я даже удалил (через firebug) модальный оверлейный div, но я все еще не могу редактировать текстовые поля.
Если я включу modal: false, тогда он работает нормально, modal: true вызывает эти проблемы.
Как вы можете видеть, я пробовал метод «moveToTop», никакого эффекта.
Я также попытался уничтожить всплывающее окно и полностью повторно инициализировать его из функции ShowEdit.
У кого-нибудь есть какие-либо подсказки о том, что я могу сделать, чтобы исправить это?
Комментарии:
1. Где текстовые поля? … и какой HTML-код вы пытаетесь вставить в диалоговое окно?
2. Просто для завершения, это было вызвано загрузкой нескольких версий вышеупомянутого кода, и всплывающее окно было применено к нескольким разделам. Как только имена были сделаны уникальными, все заработало нормально.
3. он загружал ту же форму из Asp.net с помощью вызова веб-сервиса. Та же форма, разные данные (пользовательские вкладки j-query), но при загрузке формы из веб-сервиса, ASP.NET не знает контекста страницы и, следовательно, не смог сделать идентификатор уникальным, фактически, он каждый раз выдавал им одни и те же идентификаторы…