1
我正在使用jquery-ui選項卡和對話框功能。jquery UI對話框不會消失
每個標籤在頁面上都有一個按鈕,用於打開對話框。這適用於其中一個選項卡。但是,如果我去第二個標籤,該按鈕不起作用。當我回到第一個選項卡時,對話框顯示出來,但問題是我注意到,當我將開關切換到第一個選項卡時,它會一直插入新的div,而舊的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: http://jsfiddle.net/a7x4T/14/ 但是現在所有三個對話同時顯示(預期)。 我有相同的ID,這樣我就可以在任何地方重用jsp頁面。 –
這是我最終想要的: http://jsfiddle.net/a7x4T/18/ 所以我想我應該尋找一種方便的方式來在JSP中生成唯一的ID並以某種方式將它們傳遞給JavaScript。如果你知道某種方式,那麼你可以告訴我。基本上這個jsp片段需要是可重用的,所以任何人都可以包含它並期待按鈕的工作。 非常感謝羅賓! –
@iamrohitbanga:是的:)生成唯一的ID將解決問題。你可以爲此HTTP會話ID。但是,我用另一種方法更新了我的答案。 –