我有以下代码:
<div id="DivPassword" title="test" >
Run Code Online (Sandbox Code Playgroud)
我想更改div标题,我有以下代码:
function ChangeAttribute() {
$("#DivPassword")
.attr('title', 'Photo by Kelly Clark');
$('#DivPassword').dialog('open');
return false;
}
Run Code Online (Sandbox Code Playgroud)
打开对话框时,标题仍在测试中!如果我没有为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");
}
}
});
Run Code Online (Sandbox Code Playgroud)
<script type="text/javascript">
var Dtitle;
$(function() {
$('#DivPassword').dialog({
autoOpen: false,
width: 800,
title : Dtitle,
buttons: {
"Cancel": function() {
$(this).dialog("close");
},
"Accept": function() {
$(this).dialog("close");
}
}
});
});
function ChangeAttribute(name) {
$("#DivPassword")
.attr('title', name)
.dialog('open');
Dtitle = $("#DivPassword").attr('title');
alert(Dtitle);
}
</script>
Run Code Online (Sandbox Code Playgroud)
Chr*_*der 23
您可以直接使用以下命令更改对话框的标题:
$('#DivPassword').dialog('option', 'title', 'Photo by Kelly Clark');
Run Code Online (Sandbox Code Playgroud)
这将适用于您的情况.实际上,更改title属性的代码是正确的.我想对话插件会在首先调用.dialog时创建对话框.open方法只显示对话框,而无需从div重新创建它.
Jho*_*man 11
您可以使用jQuery从任何DOM元素更改任何attr,如下所示:
$("#divMessage").attr('title', 'Type here the new Title text');
Run Code Online (Sandbox Code Playgroud)
干杯!
感谢所有的答案。
必须$('#DivPassword').dialog({是在之后.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");
}
}
});
Run Code Online (Sandbox Code Playgroud)