안녕하세요. 이와 비슷한 질문을 많이했지만, 대화 상자를 페이지의 기본 폼으로 다시 추가하여 모두 해결되었습니다. 이것은 다음과 같은 문제가 해결되지 않습니다JQuery 대화 상자에 ASP.net 컨트롤 추가가 올바르게 렌더링되지 않습니다.
내 영문 파일에서를, 나는 다음과 같은 코드의 세그먼트를 정의했습니다 :
<asp:UpdatePanel runat="server" ID="RadAjaxPanel2" UpdateMode="always">
<ContentTemplate>
<div id="areaFilterDialog" runat="server">
</div>
</ContentTemplate>
</asp:UpdatePanel>
와 나는 대화를 초기화하려면 다음 자바 스크립트/jQuery를 가지고
$("#areaFilterDialog").dialog({
bgiframe: true,
autoOpen: false,
resizable: false,
modal: true,
draggable: true,
closeOnEscape: true,
width: 630,
open: function (type, data) {
dialogOpen = true;
$(this).parent().appendTo("form");
}
});
});
부모 페이지의 양식에 대화 요소를 추가합니다. 다음과 같이 .cs 파일에서
, 나는 요소에 콘텐츠를 추가 :var departmentCode = e.DepartmentCode;
var summaryType = e.SummaryType;
var summaryCode = e.SummaryCode;
var totalName = e.TotalName;
var view = this.TemplateControl.LoadControl(".\\WebControls\\FilteredAreaRadGrid.ascx") as FilteredAreaRadGrid;
using (var businessManager = new BusinessManager(new DALConnection(this.DalConnectionString)))
{
view.DataSource = businessManager.GetData(departmentCode, summaryType, summaryCode, string.Empty);
this.AreaFilterDialog.Controls.Add(view);
}
을하고 난 스크립트 관리자 다음과 같은 시작 스크립트 등록하여 JQuery와 UI 대화 쇼를합니다
var script = string.Format("ShowAttendanceFilterPopup('{0}');", totalName);
ScriptManager.RegisterStartupScript(
this.Page,
this.Page.GetType(),
"tmp",
string.Format("<script type='text/javascript'>{0}</script>", script),
false);
을 다음 자바 스크립트/jQuery를 호출
가 :
function ShowAttendanceFilterPopup(summaryName) {
$("#areaFilterDialog").data('title.dialog', summaryName);
$('#areaFilterDialog').dialog("open");
$('#areaFilterDialog').dialog("enable");
}
문제는 그 대화 상자에 추가 된 html은 실제로 페이지 상단에 추가되며 대화 상자는 전혀 표시되지 않습니다. 만약 내가 내가 그것을 보여주기 전에 대화 상자에 컨트롤을 추가하지 않으면 대화 상자가 올바르게 표시됩니다.
Telerik RadGrid가 포함 된 UserControl뿐 아니라 표준 asp 버튼을 사용하여이 기능을 추가했습니다.이 기능은 모두 동일한 동작을합니다.
누구나 내가 잘못하거나 더 잘하고있는 것에 대해 아이디어를 얻었습니까?이 문제에 대한 해결책은 무엇입니까?
고마워,
롭
firefox/firebug를 실행합니까? 여기서 무슨 일이 일어나고 있는지 정확히 파악할 수 있습니다. div를 업데이트하는 프로세스가 어떻게 든 대화 상자에 영향을 미친다는 것을 알고 있습니다. 방화 광을 사용하여 모든 단계에서 DOM을 검사하고 정확히 무슨 일이 일어나는지에 대한 통찰력을 얻을 수 있습니다. – mikey
예 div에 올바르게 추가되었지만 스타일이 요소에 기인한다고해도 적용되지 않습니다. – rjbell00