如何使用jquery更改div标题

如何使用jquery更改div标题,jquery,Jquery,我有以下代码: <div id="DivPassword" title="test" > function ChangeAttribute() { $("#DivPassword") .attr('title', 'Photo by Kelly Clark'); $('#DivPassword').dialog('open'); return false; } 当对话框打开时,标题仍然是t

我有以下代码:

<div id="DivPassword" title="test" > 
 function ChangeAttribute() {
         $("#DivPassword")
            .attr('title', 'Photo by Kelly Clark');
         $('#DivPassword').dialog('open');
         return false;
     }
当对话框打开时,标题仍然是test!如果我没有为div指定任何标题,则对话框不会显示任何标题。我该怎么纠正呢




var-Dtitle;
$(函数(){
$('#DivPassword')。对话框({
自动打开:错误,
宽度:800,
标题:Dtitle,
按钮:{
“取消”:函数(){
$(此).dialog(“关闭”);
},
“接受”:函数(){
$(此).dialog(“关闭”);
}
}
});
});
函数ChangeAttribute(名称){
$(“#DivPassword”)
.attr('title',name)
.对话框(“打开”);
Dtitle=$(“#DivPassword”).attr('title');
警报(Dtitle);
}

您是否尝试过此处给出的任何建议: ?


看起来你正在按照公认的答案做。如果这不起作用,也许其他插件会起作用。

听起来你的插件在到达ChangeAttribute函数之前正在阅读标题。您发布的代码肯定会更改title属性,因此在幕后还会发生其他事情

还有,当我在这里的时候,别忘了使用链接。jQuery中的大多数函数都会再次返回相同的对象:

$("#DivPassword").attr('title', 'Photo by Kelly Clark').dialog('open');

// or like this, perhaps easier to read:

$("#DivPassword")
    .attr('title', 'Photo by Kelly Clark')
    .dialog('open')
;

打开对话框后,尝试设置标题属性。您的dialog.open()可能会重置title属性

我认为可以为open事件提供回调函数


请参见

您可以直接使用以下命令更改对话框的标题:

$('#DivPassword').dialog('option', 'title', 'Photo by Kelly Clark');
这在你的情况下有效。事实上,更改title属性的代码是正确的。我猜dialog插件是在首先调用.dialog时创建对话框的。open方法只显示对话框,而不从div重新创建它

指定对话框的标题。这个 标题也可以由 对话框源上的title属性 元素

代码示例

使用指定的标题选项初始化对话框

$( ".selector" ).dialog( { title: 'Dialog Title' } );
在init之后获取或设置title选项

//getter
var title = $( ".selector" ).dialog( "option", "title" );
//setter
$( ".selector" ).dialog( "option", "title", 'Dialog Title' );


要回答您的
问题,对话框不会显示任何标题

谢谢您的回答

$('DivPassword')。对话框({
必须在
.dialog('open');

最简单的方法是如下操作:

 $("#DivPassword")
            .dialog('open');
         $('#DivPassword').dialog({
             autoOpen: false,
             title: $('#DivPassword').attr('title') + name,
             width: 400,
             buttons: {
                 "Cancel": function() {
                     $(this).dialog("close");
                 },
                 "Accept": function() {
                     $(this).dialog("close");
                 }
             }
         });
我这样做:

$("#div1").dialog({ autoOpen: false, modal: true, height: 420, width: 750, resizable: false });
//more code
$("#div1").dialog("option", "title", "joopla, here is a new title");
这对我有用

$("#div1").dialog({ autoOpen: false, modal: true, height: 420, width: 750, resizable: false });
// more code
$("#div1").dialog("option", "title", "joopla, here is a new title");

为我做了这件事。

您可以使用jQuery轻松地更改任何DOM元素的任何属性,如下所示:

$("#divMessage").attr('title', 'Type here the new Title text');

干杯!

如果它被重置,那么我不认为初始标题会被显示!你怎么看?正在分配的新标题没有被显示。我已经尝试添加警报…就像上面编辑的代码一样。但是尽管两个标题都显示正确的标题,但标题没有被显示。我已经更改了编辑了上面编辑部分中的代码。尽管如此,我仍然可以找出它不起作用的原因。您仍然没有使用对话框方法来设置标题。您可以在您的警告语句之前添加我的行,它应该会起作用。工作完美-我在不同的帖子和文章中尝试了所有其他方法。这显然是最优雅的解决方案注意..又名,最好的!我已经学习/使用jquery对话框几个月了,在这里只是第一次看到这种方法。我不知道为什么文档、tut和帖子没有更多地强调这种解决方案,因为它在许多不同的代码情况下非常有用/强大..。非常感谢分享一个伟大的o东北班轮
$("#div1").dialog({ autoOpen: false, modal: true, height: 420, width: 750, resizable: false });
// more code
$("#div1").dialog("option", "title", "joopla, here is a new title");
$("#divMessage").attr('title', 'Type here the new Title text');