jquery-ui 탭과 대화 상자 기능을 사용하고 있습니다.Jquery UI 대화 상자가 사라지지 않습니다.
각 탭에는 대화 상자를 여는 페이지에 단추가 있습니다. 이것은 탭 중 하나에 적용됩니다. 그러나 두 번째 탭으로 이동하면 버튼이 제대로 작동하지 않습니다. 다시 첫 번째 탭으로 돌아 왔을 때 대화 상자가 나타나지만 첫 번째 탭으로 앞뒤로 전환 할 때마다 문제가 발생합니다. 이전 div의 display : none 설정시 새 div 삽입이 계속됩니다.
저는 JSP로 이것을하고 있습니다. 이 재사용 가능한 JSP 같은 모습입니다 :
<script>
$(function() {
var formData = null;
$.ajax({
url : "addFormGenerator.html",
success : function(data) {
formData = data;
$("#addFormDialog").html(data);
$("#addFormDialog").dialog({
autoOpen : false,
height : 300,
width : 350,
modal : true,
buttons : {
"Add" : function() {
$(this).dialog("close");
},
Cancel : function() {
$(this).dialog("close");
}
},
close : function() {
}
});
}
});
$("#addButton").button().click(function() {
$("#addFormDialog").html(formData);
$("#addFormDialog").dialog("open");
});
});
</script>
<button id="addButton">Click here to Add New</button>
<div id="addFormDialog" title="Add New"></div>
이 JSP 조각이뿐만 아니라 다른 JSP 페이지에 포함되어 있습니다. 탭 사이를 전환 할 때 이전 단추가 가비지 수집 될 것으로 가정하고있었습니다.
문제를 이해하고 해결할 수 있도록 도와 줄 수 있습니까?
감사합니다 ... 여기 는 jsfiddle입니다 (난 너무 혼란 소리가 아니에요 바랍니다) 동시에 세 대화 상자가 모두 표시됩니다. 동일한 ID를 사용하여 어디서나 jsp 페이지를 재사용 할 수있었습니다. –
이것은 궁극적으로 내가 원하는 것입니다 : http://jsfiddle.net/a7x4T/18/ 그래서 나는 JSP에서 고유 한 ID를 생성하고 어떻게 든 JavaScript에 전달하는 편리한 방법을 찾고 있어야합니다. 당신이 방법을 안다면 나에게 말해 줄 수 있니? 기본적으로이 JSP 조각은 재사용이 가능해야하므로 누구나이 버튼을 포함시켜 버튼이 작동 할 것으로 기대할 수 있습니다. 고마워요 로빈! –
@iamrohitbanga : 예 :) 고유 ID를 생성하면 문제가 해결됩니다. 이를위한 HTTP 세션 ID를 사용할 수 있습니다. 그러나 나는 또 다른 접근법으로 나의 대답을 업데이트했다. –