开发者

Update title of Dialog from the source of Iframe

I made a dialog,iframe

var $frm = $('<iframe />').attr('id','ifrmTV'), 
$dialog = $('<div />').dialog({ autoOpen: false, width: 'auto', hight: 'auto' });

then after some data processing I set $frm source and show t开发者_运维技巧he dialog something like:

$frm.attr('src', 'Http/WMP.htm').appendTo($dialog);
$dialog.dialog({title: 'title'}).dialog('open');      

I would like to know if there is a way in WMP.htm code to change the title of the dialog. jquery_UI generate a span with the class ui-dialog-title but it shouldn't be accessible from the WMP.htm. any help would be greatly appreciated.


The page Http/WMP.htm that you are loading inside the iframe should also load jQuery. This is not necessary, but will make consistent when looking for the ui-dialog-title element.

Note: read this about lowercase and uppercase urls.

Now, inside your iframe, you can access the parent container using window.parent and, using jQuery, access any element with $('selector', window.parent.document). Now, the page that you load inside your iframe should know it's owned dialog element id, so it can find it back. While you can accomplish this in various ways, I'll just assume you have one dialog for this iframe loading Http/WMP.htm. So, you should be able to do something like

var $frm = $('<iframe />').attr('id','ifrmTV'), 
    $dialog = $('<div />').attr('id', 'dlgTV')
                 .dialog({ autoOpen: false, width: 'auto', hight: 'auto' });

//...

$frm.attr('src', 'Http/WMP.htm').appendTo($dialog.dialog({title: 'Loading...'}));
$dialog.dialog('open'); 

And inside the page WMP.htm :

$('#dlgTV', parent.document).prev().find('.ui-dialog-title').html('Some title');


можно использовать d3 я получил желаемый результат так:


You can use d3 I got the desired result as follows:

d3.select(parent.document).select('span.ui-dialog-title').text('нужный текст');
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜