Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.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
Javascript Jquery UI对话框在初始化之前不能调用对话框上的方法;试图调用方法';等参线';_Javascript_Jquery_Jquery Ui_Jquery Ui Dialog - Fatal编程技术网

Javascript Jquery UI对话框在初始化之前不能调用对话框上的方法;试图调用方法';等参线';

Javascript Jquery UI对话框在初始化之前不能调用对话框上的方法;试图调用方法';等参线';,javascript,jquery,jquery-ui,jquery-ui-dialog,Javascript,Jquery,Jquery Ui,Jquery Ui Dialog,我使用下面的代码。函数get_devcies_full每次调用5次如果对话框已经打开,不要再打开它,只需更新内容,然后我将在下面编写代码我在javascript中得到了错误 在初始化之前无法在对话框上调用方法; 试图调用方法isOpen 函数获取设备完整(id,slno) { $.post(“用户/获取完整设备/”+id+“/”+slno, 功能(数据){ var NewDialog=$(''); if(NewDialog.dialog(“isOpen”)!==true){ NewDialog.

我使用下面的代码。函数get_devcies_full每次调用5次如果对话框已经打开,不要再打开它,只需更新内容,然后我将在下面编写代码我在javascript中得到了错误


在初始化之前无法在对话框上调用方法; 试图调用方法isOpen

函数获取设备完整(id,slno)
{
$.post(“用户/获取完整设备/”+id+“/”+slno,
功能(数据){
var NewDialog=$('');
if(NewDialog.dialog(“isOpen”)!==true){
NewDialog.dialog({
莫代尔:是的,
标题:“标题”,
宽度:940,
身高:600,
}); 
}
html(数据);
var t=setTimeout(函数(){get_devcies_full(id,slno);},5000);
}
);
}
请给出问题的解决方案?

尝试以下方法:

function get_devcies_full(id,slno)
{
    $.post("user/get_full_device/" +id + "/" +slno,
        function(data) {
            if(!($("#MenuDialog").length))//if this div created for first time
            {
                $(body).append('<div id="MenuDialog"></div>');//First time you have to append this in body  
            }
            if (!$('#MenuDialog').dialog('isOpen'))
            //Try if not works => if(!($("#MenuDialog").parents(".ui-dialog").is(":visible")))
            {
                $("#MenuDialog").dialog({
                    modal: true,
                    title: "Title",
                    width :940,
                    height:600    
                });
            }
            $("#MenuDialog").html(data);
            var t = setTimeout(function () {get_devcies_full(id,slno);},5000);
        }
    );
}
函数获取设备完整(id,slno)
{
$.post(“用户/获取完整设备/”+id+“/”+slno,
功能(数据){
if(!($(“#MenuDialog”).length))//如果这个div是第一次创建的
{
$(body.append(“”);//第一次必须在body中追加此项
}
if(!$('MenuDialog')。对话框('isOpen'))
//Try if not works=>if(!($(“.ui对话框”).parents(“.ui对话框”).is(“:visible”))
{
$(“#菜单对话框”)。对话框({
莫代尔:是的,
标题:“标题”,
宽度:940,
身高:600
});
}
$(“#MenuDialog”).html(数据);
var t=setTimeout(函数(){get_devcies_full(id,slno);},5000);
}
);
}

您的问题标题不是自解释的,您的描述中也没有对您面临的问题进行解释。您可能是想写第一行:
var NewDialog=$(“#MenuDialog”)无法在初始化之前调用对话框上的方法;尝试调用方法isOpenMay此url将帮助您尝试我已更改的上述答案。参考
function get_devcies_full(id,slno)
{
    $.post("user/get_full_device/" +id + "/" +slno,
        function(data) {
            if(!($("#MenuDialog").length))//if this div created for first time
            {
                $(body).append('<div id="MenuDialog"></div>');//First time you have to append this in body  
            }
            if (!$('#MenuDialog').dialog('isOpen'))
            //Try if not works => if(!($("#MenuDialog").parents(".ui-dialog").is(":visible")))
            {
                $("#MenuDialog").dialog({
                    modal: true,
                    title: "Title",
                    width :940,
                    height:600    
                });
            }
            $("#MenuDialog").html(data);
            var t = setTimeout(function () {get_devcies_full(id,slno);},5000);
        }
    );
}