我有两个jQuery UI对话框(彼此无关,但都出现了这种行为)。第一次打开和关闭时它们都表现得很完美。但是,一旦它们第一次关闭后,它们就无法重新打开。以下是其中一个的代码,另一个具有相同的结构。我没有在任何地方调用 'destroy()' 或 'remove()',所以我不知道为什么它们不能正常工作。下面是我的代码:
$(".qr_link").click(function(){
openQr(this);
});
function openQr(that){
var title = $(that).parent().parent().children("p.resume-name").text();
var qr = $(that).parent().parent().children(".qr_image");
$(qr).dialog({
title: title,
width: 'auto',
height: 'auto',
modal: true
});
}
我的标记:
<div class="resume">
<p class="resume-name"><%= link_to(offer.name, public_url(offer.public_id, :host => ApplicationSetting.short_domain, :params => {:rid => @recruiter_id})) %></p>
<p id="resume_links">-
<%= link_to("QR", "#", :class => "qr_link") %>
<%= link_to("X", "#", :class => "remove_link") %>
<%= link_to("Preview", "#", :class => "preview_link") %>
</p>
<%= qr_image(public_url(offer.public_id, :host => ApplicationSetting.short_domain, :params => {:rid => @recruiter_id}), "200x200", "hide qr_image")%>
<p class="resume-tags"><span class="resume-tags-label">Tags: </span><span class="resume-tags-value">
<%= offer.tags.join(", ") %>
</p>
<p class="resume-description"><%= offer.description %></p>
</div>
提前感谢。
更新
最初,当页面加载时,我加载了 QR 图像,但是我将其隐藏。它在对话框中显示得很好,但是当对话框出现时,QR 图像从 HTML 中删除了!所以我猜重构后的问题是:"为什么我的 QR 码被删除了?"