버튼을 클릭하면 열리는 모달 대화 상자가 열리고 .xhtml
페이지가로드됩니다.jquery 모달 대화 상자가 xhtml 페이지를로드하지만 닫히지 않습니다.
이 XHTML 페이지 안에는 부모 창 (대화 상자가 초기화되는 곳)으로 일부 데이터를 전달하기위한 버튼이 있습니다. 대화 상자를 닫으려고해도 닫히지 않습니다 !!
첫 페이지 :
<script type="text/javascript">
var selected_row_data_json;
window.lang = new jquery_lang_js();
$().ready(function() {
$.ajaxSetup ({
// Disable caching of AJAX responses
cache: false
});
createDataListDialog();
});
function setSelectedRowJsonData(row_data_)
{
selected_row_data_json = row_data_;
}
function setFormSelectedValues()
{
$('#dataListDialog').dialog('close');
}
function createDataListDialog()
{
$("#dataListDialog").dialog(
{
autoOpen: false,
modal: true,
resizable: true,
open: function (event, ui) {
/* <![CDATA[ */
$('#dataListDialog').css('overflow', 'hidden');
$('body').css('overflow','hidden');
$(this).load("data_list.xhtml");
/* ]]> */
},
height: 400,
width: 550,
close: function (event, ui) {
$(this).dialog('destroy');
createDataListDialog();
},
create: function(event, ui)
{
$(this).parents(".ui-dialog").css("padding", 0);
$(this).parents(".ui-dialog:first")
.find(".ui-dialog-content").css("padding", 0);
}
});
}
</script>
<f:view>
<h:outputLabel value="Code:" lang="en" onclick="openDialog('dataListDialog');return false;" />
<div id="dataListDialog" lang="en" title="Users" dir="#{user.dir}">
</div>
</f:view>
data_list.xhtml
페이지 : 잘못된
<script type="text/javascript">
function test()
{
window.parent.setSelectedRowJsonData(selected_row_data_json);
window.parent.setFormSelectedValues();
}
</script>
<h:form id="dataListForm" ">
<input type="button" onclick="test()" value="TEST">/input>
</h:form>
내가 뭐하는 거지 일이 내 코드? 무언가를 놓침? 로드 된 페이지에서 대화 상자가 닫히지 않는 이유는 무엇입니까?
UPDATE : 로드 페이지는 html
페이지 인 경우 다음 좋은 작품 - 대화 상자가 종료됩니다. 문제는 페이지가 xhtml
페이지 일 때입니다. 어떻게 해결할 수 있습니까?
도움이 될 것입니다! 로드가 성공적으로 완료된 후
close 이벤트에서'createDataListDialog()'를 호출하는 것처럼 보입니다. 닫을 때마다 대화 상자를 다시 만드는 것처럼 보입니다. –