从子元素更改jQuery对话框标题

时间:2019-06-14 13:29:13

标签: jquery asp.net

我尝试了一些有关更改jQuery对话框标题的方法,但没有成功。有人可以帮我怎么做。预先感谢

我有很多使用window.showModalDialog方法打开的弹出页面。现在,我需要更改jQuery对话框。我想根据弹出页面标题来更改对话框标题。现在,弹出页面位于iframe中,而iframe位于jQuery对话框中。我添加了在弹出页面中更改标题的功能。

这是我的aspx页面:

<div id="dialog">
   <iframe id="myIframe" src=""></iframe>
 </div>
 <button id="dialogBtn">Open Dialog</button>

用于处理对话框的JavaScript:

$("#dialog").dialog({
    autoOpen: false,
    modal: true,
    height: 600,
    open: function(ev, ui) {
    $('#myIframe').attr('src','http:Order/orderForm.aspx');
  }
});

$('#dialogBtn').click(function() {
    $('#dialog').dialog('open');
});

此功能可以在弹出页面的onload方法上更改标题:

 function changeDialogTitle() {
        var dialog = $('#dialog', parent.document);
        alert(dialog.length);
         $('#dialog', parent.document).dialog({ title: "New Dialog Title" });
}

我也尝试过重新打开对话框,但失败了:

 $('#dialog', parent.document).dialog("option", "title", "New Title").dialog('open');

1 个答案:

答案 0 :(得分:0)

代替

$('#dialog', parent.document).dialog({ title: "New Dialog Title" });

您可以只在父级中运行它,例如:

function changeDialogTitle() {
    parent.window.$("#dialog").dialog({title: "New Dialog Title"});
}