【发布时间】:2010-12-04 07:51:34
【问题描述】:
如何动态设置正在打开的对话框的文本?我尝试了一些不同的方法,但它们都以一个空对话框响应。
这是我目前的尝试:
$('#dialog').text('点击链接下载文件:'.data); $('#dialog').dialog("open");
【问题讨论】:
-
哈哈,在我写之前的 php 太多了;不过感谢您的讽刺,这很有帮助!
如何动态设置正在打开的对话框的文本?我尝试了一些不同的方法,但它们都以一个空对话框响应。
这是我目前的尝试:
$('#dialog').text('点击链接下载文件:【问题讨论】:
为获得最佳实践,请尝试在对话框 div 中放置一个 div,并在其中添加文本。
<div id="myDialog"><div id="myDialogText"></div></div>
然后设置内部Div的文本。这样可以更好地分离,所以你有
然后你可以设置文本
jQuery("#myDialogText").text("your text here");
【讨论】:
这是动态创建对话框并动态设置其消息的另一种方法:
$('<div></div>').dialog({
modal: true,
title: "Confirmation",
open: function() {
var markup = 'Hello World';
$(this).html(markup);
},
buttons: {
Ok: function() {
$( this ).dialog( "close" );
}
} }); //end confirm dialog
查看实际操作:http://jsfiddle.net/DYbwb/
【讨论】:
使用加号连接字符串:
$('#dialog').text('Click on the link to download the file:
' + data);
$('#dialog').dialog("open");
【讨论】:
这是一个在 jQueryui 对话框中显示动态文本的示例。文本来自 ajax 响应。消息如下所示(比显示的要大!)。
$(".info").click(function(event){
event.preventDefault();
$id = $(this).attr("id");
$.ajax({
type: "POST",
url: 'my_code.php',
data: {query:"info", rowid: $id},
success: function(data) {
try {
obj = JSON.parse(data);
var str = '';
for (var i in obj) {
str += i + ":" + obj[i] + "<br />";
if (i == "id") str += "<hr />";
}
$("#dialog-1").html(str).dialog();
$("#dialog-1").dialog('open');
} catch (e) {}
}
});
});
【讨论】:
dialog("open"); 不是有效的 jquery UI 方法。 (以及迈克所说的与+而不是.连接
【讨论】: