Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jqueryui-modal对话框(创建modal内容的更好方法?)_Jquery_Jquery Ui_Jquery Ui Dialog_Jquery Dialog - Fatal编程技术网

jqueryui-modal对话框(创建modal内容的更好方法?)

jqueryui-modal对话框(创建modal内容的更好方法?),jquery,jquery-ui,jquery-ui-dialog,jquery-dialog,Jquery,Jquery Ui,Jquery Ui Dialog,Jquery Dialog,有没有办法在javascript中定义模式内容,而不是总是在页面上有一个元素并从中创建对话框 它有标题选项,所以我可以“动态”创建一个模式标题,但是实际内容呢?比如说我需要它说,“你要删除图像#539”。而不是为每一个可能的图像创建一个模式——或者甚至是创建元素,然后从中创建对话框 一定有更好的办法。你可以试试这样的办法: HTML <button id='diag1'>First dialog</button> <button id='diag2'>Seco

有没有办法在javascript中定义模式内容,而不是总是在页面上有一个元素并从中创建对话框

它有标题选项,所以我可以“动态”创建一个模式标题,但是实际内容呢?比如说我需要它说,“你要删除图像#539”。而不是为每一个可能的图像创建一个模式——或者甚至是创建元素,然后从中创建对话框


一定有更好的办法。

你可以试试这样的办法:

HTML

<button id='diag1'>First dialog</button>
<button id='diag2'>Second dialog</button>
第一个对话框
第二次对话
Javascript

var diag = $('<div id="myDialog" title="Testing!"><span id="dialogMsg"></span></div>');

diag.dialog({
    autoOpen: false,
    modal: true
});

$('#diag1').click(function() {
    $('#dialogMsg').text("Message for dialog 1.");
    diag.dialog("open");
});

$('#diag2').click(function() {
    $('#dialogMsg').text("Message for dialog 2");
    diag.dialog("open");
});
var diag=$('');
诊断对话框({
自动打开:错误,
莫代尔:对
});
$('#diag1')。单击(函数(){
$('#dialogMsg').text(“对话1的消息”);
diag.dialog(“打开”);
});
$('#diag2')。单击(函数(){
$('dialogMsg').text(“对话2的消息”);
diag.dialog(“打开”);
});

演示。

这里是另一个更具动态性的解决方案:

function showError(errorTitle, errorText) {

    // create a temporary place to store our text
    var window = $('<div id="errorMessage" title="' + errorTitle + '"><span id="dialogMsg">' + errorText + '</span></div>');

    // show the actual error modal
    window.dialog({
        modal: true
    });
}
可以想象为函数添加更多参数以控制宽度、高度等


享受吧

谢谢你,斯科特。我已为对话框添加了标题属性:

var diag=$('');

$('#diag1')。单击(函数(){
$('dialogMsg').html('messagefordialog1');
$(“#myDialog”).dialog({title:'dialog title 1'});
diag.dialog(“打开”);
});

showError("Error-Title", "Error message here");
var diag = $('<div id="myDialog" title=""><div id="dialogMsg"></div></div>');
$('#diag1').click(function() {
    $('#dialogMsg').html('<div class="dialog-body">Message for dialog 1</div>');
    $("#myDialog").dialog({title: 'Dialog Title 1'});
    diag.dialog('open');
});