我有以下代码:
<div id="DivPassword" title="test" >
我想改变div标题,我有以下代码:
function ChangeAttribute() {
$("#DivPassword")
.attr('title','Photo by Kelly Clark');
$('#DivPassword').dialog('open');
return false;
}
当对话框打开时,标题仍然是测试!如果我没有为div分配任何标题,该对话框不会显示任何标题.我该怎么纠正?
function ChangeAttribute() {
$("#DivPassword")
.attr('title','Photo by Kelly Clark')
.dialog('open');
alert($("#DivPassword").attr('title'));
}
$('#DivPassword').dialog({
autoOpen: false,width: 800,buttons: {
"Cancel": function() {
$(this).dialog("close");
},"Accept": function() {
alert($(this).attr('title'));
$(this).dialog("close");
}
}
});
<script type="text/javascript">
var Dtitle;
$(function() {
$('#DivPassword').dialog({
autoOpen: false,title : Dtitle,"Accept": function() {
$(this).dialog("close");
}
}
});
});
function ChangeAttribute(name) {
$("#DivPassword")
.attr('title',name)
.dialog('open');
Dtitle = $("#DivPassword").attr('title');
alert(Dtitle);
}
</script>
解决方法
您可以直接使用以下方式更改对话框的标题:
$('#DivPassword').dialog('option','title','Photo by Kelly Clark');
这将适用于你的情况.其实你的代码改变title属性是正确的.我猜对话插件首先调用.dialog时会创建对话框. open方法只是显示对话框,而不需要从div重新创建它.