115

在此 UI 对话框中提交表单后,我喜欢从 UI 对话框更改标题。所以在load我应该建议之后的回调函数中,但我已经尝试过搜索并没有结果。

有人有想法吗?

4

5 回答 5

267

使用对话框方法:

$('.selectorUsedToCreateTheDialog').dialog('option', 'title', 'My New title');

或者直接,hacky:

$("span.ui-dialog-title").text('My New Title'); 

为了将来参考,您可以使用 jQuery 跳过 google。大多数时候,jQuery API 会回答你的问题。在这种情况下,对话框 API 页面。对于主库:http ://api.jquery.com

于 2010-01-31T13:14:54.127 回答
14

我找到了更简单的解决方案:

$('#clickToCreate').live('click', function() {
     $('#yourDialogId')
         .dialog({
              title: "Set the title to Create"
         })
         .dialog('open'); 
});


$('#clickToEdit').live('click', function() {
     $('#yourDialogId')
         .dialog({
              title: "Set the title To Edit"
         })
         .dialog('open'); 
});

希望有帮助!

于 2015-02-12T17:23:33.967 回答
3

Nick Craver 将自定义 HTML 放在 jquery 对话框标题中的 hacky 想法的增强:

var newtitle= '<b>HTML TITLE</b>';
$(".selectorUsedToCreateTheDialog").parent().find("span.ui-dialog-title").html(newtitle);
于 2013-01-21T08:46:34.513 回答
2

我试图实现尼克的结果是:

$('.selectorUsedToCreateTheDialog').dialog('option', 'title', 'My New title');

但这对我不起作用,因为我在一页上有多个对话框。在这种情况下,它只会在第一次正确设置标题。尝试装订命令不起作用:

    $("#modal_popup").html(data);
    $("#modal_popup").dialog('option', 'title', 'My New Title');
    $("#modal_popup").dialog({ width: 950, height: 550);

我通过将标题添加到页面上每个对话框的 javascript 函数参数来解决此问题:

function show_popup1() {
    $("#modal_popup").html(data);
    $("#modal_popup").dialog({ width: 950, height: 550, title: 'Popup Title of my First Dialog'});
}

function show_popup2() {
    $("#modal_popup").html(data);
    $("#modal_popup").dialog({ width: 950, height: 550, title: 'Popup Title of my Other Dialog'});
}
于 2015-02-12T14:51:52.693 回答
0

甚至更好!

    jQuery( "#dialog" ).attr('title', 'Error');
    jQuery( "#dialog" ).text('You forgot to enter your first name');
于 2015-03-03T23:36:15.697 回答