Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.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 多IF语句的jQuery UI问题_Javascript_Jquery Ui Dialog - Fatal编程技术网

Javascript 多IF语句的jQuery UI问题

Javascript 多IF语句的jQuery UI问题,javascript,jquery-ui-dialog,Javascript,Jquery Ui Dialog,我当然不认为自己是jQuery/javascript专家,但我知道足够多的编程知识,可以应付——但在这个项目中,我遇到了一个问题,jQuery UI无法初始化第二个对话框。在初始化每个if语句之前,我有两个if语句要测试,但只有第一个if语句似乎起作用了 $(document).ready(function(){ // regular dialog box $("#dialog").dialog({autoOpen: false, modal: true});

我当然不认为自己是jQuery/javascript专家,但我知道足够多的编程知识,可以应付——但在这个项目中,我遇到了一个问题,jQuery UI无法初始化第二个对话框。在初始化每个if语句之前,我有两个if语句要测试,但只有第一个if语句似乎起作用了

$(document).ready(function(){ // regular dialog box $("#dialog").dialog({autoOpen: false, modal: true}); $("#dialog_link").click(function(){ $("#dialog").dialog("open"); return false; }); // confirm box if($.cookie("modal_confirm").length > 0 && $.cookie("modal_confirm")!="") { $("body").prepend(''+$.cookie("modal_confirm")+''); var g = $("#confirm"); g.html( g.html().replace(/\+/g," ") ); $("#confirm").dialog({ modal: true, stack: true, buttons: { 'OK': function() { window.location.replace($.cookie("confirmGo"))); (this).dialog('close'); }, Cancel: function() { $(this).dialog('close'); } }, close: function(){ $.cookie("modal_confirm",null); $.cookie("confirmGo",null);} }); } // alert box if($.cookie("alert").length > 0 && $.cookie("alert")!="") { $("body").prepend(''+$.cookie("alert")+''); var f = $("#alert"); f.html( f.html().replace(/\+/g," ") ); $("#alert").dialog({modal: true, stack: true, buttons: {'OK': function() {$(this).dialog('close');}}, close: function(){ $.cookie("alert",null); }}); } }); $(文档).ready(函数(){ //常规对话框 $(“#dialog”).dialog({autoOpen:false,modal:true}); $(“#对话框_链接”)。单击(函数(){ $(“对话框”)。对话框(“打开”); 返回false; }); //确认框 如果($.cookie(“模式确认”).length>0&$.cookie(“模式确认”)!=“”){ $(“正文”).prepend(“”+$.cookie(“模态确认”)+“”); var g=$(“#确认”); g、 html(g.html().replace(/\+/g,”); $(“#确认”)。对话框({ 莫代尔:是的, 斯塔克:没错, 按钮:{ “确定”:函数(){window.location.replace($.cookie(“confirmGo”));(this.dialog('close');}, 取消:函数(){$(this).dialog('close');} }, 关闭:函数() }); } //警报箱 如果($.cookie(“警报”).length>0&&$.cookie(“警报”)!=“”){ $(“正文”).prepend(“”+$.cookie(“警报”)+“”); var f=$(“警报”); f、 html(f.html().replace(/\+/g,”); $(“#警报”).dialog({modal:true,stack:true,按钮:{'OK':function(){$(this).dialog('close');}},close:function(){$.cookie(“警报”,null);}); } }); 在这种情况下,当确认打开时,警报模式不会打开。如果我将其移动到确认前,则警报将打开,但确认不会打开。 这是jQueryUI问题吗?如果是,是否有解决办法


请提前帮助和感谢。

您在第18行有一个额外的括号,后来在同一行忘记了前面的$。应改为:

“确定”:函数(){window.location.replace($.cookie(“confirmGo”);$(this.dialog('close');},


用于定位这些错误。

基于@dxprog的这个答案,您真的应该通过JSLint()运行所有JavaScript。哦,对不起,我打开了一个decodeURIComponent,在原始代码中我有正确数量的括号,所以这不是问题……还有其他想法吗?