xpages (jquery 및 부트 스트랩 파일이 있음)에 테마를 만들었습니다. 부트 스트랩 모달을 만들었고 모달의 본문에 다른 페이지를 동적으로로드하고 있습니다. 난 클릭에 대한 대화 상자를 호출 할 때 다음은 이제 (mainform에서 하위 폼처럼) 내 사용자 지정 컨트롤 코드bootstrap 모달/대화 상자를 호출하는 동안 jquery를 여러 번로드하지 마십시오.
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" dojoParseOnLoad="false"
dojoTheme="false" dojoForm="false">
<xp:div id="test">
<xp:this.attrs>
<xp:attr name="role" value="dialog"></xp:attr>
</xp:this.attrs>
<xp:div>
<div class="modal-content">
<div>
<button type="button" class="close"
data-dismiss="modal" aria-hidden="true">
×
</button>
<h4>
</h4>
</div>
<div class="modal-body">
</div>
<div styleClass='modal-footer'>
</div>
</div>
</xp:div>
</xp:div>
<xp:eventHandler event="onClientLoad" submit="false">
<xp:this.script><![CDATA[jQuery(document).ready(function() {
});]]></xp:this.script>
</xp:eventHandler>
<xp:scriptBlock id="scriptBlock">
<xp:this.value><![CDATA[
// Fill modal with content from link href
var id="#{javascript:var id=compositeData.dialogid; getClientId(id)}"
x$(id).on("show.bs.modal", function(e) {
alert('fires immediately when the show instance method is
called')
$(this).find(".modal-body").load('./LoginAsAdmin.xsp');
});
x$(id).on('shown.bs.modal', function (e) {
//var test = #{javascript:print('==========server side')};
alert('fired when the modal has been made visible')
})
x$(id).on('hide.bs.modal', function (e) {
alert('fired immediately when the hide instance method has been
called')
})
x$(id).on('hidden.bs.modal', function (e) {
alert('fired when the modal has finished being hidden from the
user ')
$(this).removeData('bs.modal');
})
x$(id).on('loaded.bs.modal', function (e) {
alert('fired when the modal has loaded content')
})
]]></xp:this.value>
</xp:scriptBlock>
</xp:view>
난 다음 부트 스트랩 모달
x$("#{id:test}").modal("show")
를 호출하고있어 메인 페이지 코드입니다 버튼의 여러 클라이언트 오류가 여러 파일을 여러 번 등로드 파일을로드하는 등 jquery 두 번로드하면 실제 페이지를로드하고 내가 부트 스트랩 모달을 호출하면 다시로드되기 때문에. 거기에 모드 jQuery 단일 모드에서 iframe을 사용하지 않고 페이지에서로드 할 수있는 방법은 무엇입니까?
"동적으로 본문의 다른 페이지를로드하는 방법"은 정확히 무엇입니까? 그 코드를 보여주십시오. 모두 당신이 "로드 중"입니다, 당신은 방금 다른 페이지의 전체 HTML을 받고 있습니까? 손을 떼면 다른 페이지가 아닌 전체 페이지가로드되거나 페이지를 iframe에로드하는 것이 좋지만 실제로 수행중인 내용을 확인할 필요가 있습니다. – DelightedD0D
내 질문에 실제 코드를 추가했습니다. "shown.bs.modal"이벤트에 대한 모달의 본문에 다른 페이지를로드하고 있습니다. 양식의 내용 만 추가하는 것은 어렵습니다. 왜냐하면 양식에는 몇 가지 조건에 따라 숨겨진 많은 섹션이 있기 때문입니다. – gkreddy
Xpage 용으로 생성 된 스크립트로 인해로드 된 모달 페이지가 손상 될 가능성이 큽니다. 대신에 동적 인 내용 컴포넌트와 커스텀 컨트롤을 사용할 것을 권한다. –