我jsut检查了打开对话框的jQuery UI示例,奇怪的是消息需要用HTML编写并通过jQuery选择器读取:
http://jqueryui.com/demos/dialog/
<script>
$(function() {
$( "#dialog" ).dialog();
});
</script>
<div class="demo">
<div id="dialog" title="Basic dialog">
<p>This is the default dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon.</p>
</div>
我想要做的很简单,我希望对话框显示一个定义为js变量的字符串,如下所示:
var cmd_str = "abcdefg";
$(cmd_str).dialog();
但这似乎不太合适。
答案 0 :(得分:2)
它不能只是任何字符串,它必须是html。
var cmd_str = "<div>abcdefg</div>";
$(cmd_str).dialog();
或maby更干净的版本:
var cmd_str = "abcdefg";
$(cmd_str).wrap("<div></div>").dialog();
进一步解释:
$("abcdefg")
会匹配<abcdefg />
元素,因为$("a")
会匹配<a />
元素。
要毁灭:
最简单的方法是将用于对话框的jquery对象保存在这样的变量中。
var cmd_str = "abcdefg";
var $message = $(cmd_str).wrap("<div></div>").dialog();
function destroyMessage(){
$message.dialog("destroy");
}
答案 1 :(得分:1)
当你调用$(cmd_str)
jQuery搜索名为abcdefg
的标签时......你应该将整个标记放在$()
中,然后将其注入DOM然后调用{{1 }}。
就像那样,我想。
.dialog()
答案 2 :(得分:1)
你必须有一个div或一些其他元素,让它隐藏,然后对话框将根据对话框.show和.hide函数使其可见。使用.text或.val(取决于消息元素)功能来设置消息。
<div id="dialogMsg" style="hidden"></div>
$("#dialogMsg").text("Your message").dialog().show();
// ... or it can be closed if settings are set when doing .dialog(...)
$("#dialogMsg").hide();