以下のコードでjQueryダイアログを開いています。ここでの問題は、それを開いてもう一度クリックしたときで、2回目と3回目はまだ開いています。
まだ開いていない場合は、一度だけ開く必要があります。
$('.view_full_email').live('click',function(){
var $tr = $(this).closest('tr');
var subject = $tr.children('td:eq(2)').text(),
from = $tr.children('td:eq(3)').text(),
to = $tr.children('td:eq(4)').text(),
cc = $tr.children('td:eq(5)').text(),
bcc = $tr.children('td:eq(6)').text(),
mesg_body = $tr.children('td:eq(7)').text();
var $dialog = $('<div>',{title:'Email'}).dialog({
autoOpen: false,
resizable: true,
width: 500
});
var email_data = "<table><tr><td><b>Subject :</b>"+ subject +"</td></tr><br/><tr><td><b>From :</b> "+ from +"</td></tr><tr><td><b>To :</b> "+ to+"</td></tr><tr><td><b>CC :</b> "+ cc+"</td></tr><tr><td><b>BCC : </b> "+ bcc+"</td></tr><tr><td><b> Message Body :</b> <textarea rows='25' cols='100' readonly = 'readonly'>" + mesg_body+ "</textarea></td></tr></table>";
$('<div>').html(email_data).appendTo($dialog);
$dialog.dialog('open');
return false;
});