【问题标题】:Jquery-ui .dialog() function gives Maximum call stack size exceeded errorJquery-ui .dialog() 函数给出最大调用堆栈大小超出错误
【发布时间】:2021-06-28 17:37:26
【问题描述】:

我正在尝试使用 Jquery-ui .dialog() 方法。这是我的功能:

jsPlumb.bind("dblclick", function(c) {

    $( "#dialog-confirm" ).dialog({
      resizable: false,
      width:400,
      height:250,
      modal: true,
      buttons: {
        "Remove Connection": function() {
          jsPlumb.detach(c);
          $( this ).dialog( "close" );
        },
        close: function() {
          $( this ).dialog( "close" );
        }
      }
    });
});

当我点击取消或窗口的 X 符号时,我得到了 Maximum call stack size exceeded error 。首先,我在想,也许我的 jquery-ui 文件有某种错误或与 jquery.js 等其他文件冲突。但是,我也在使用 $().tooltip() 函数,它也是 jquery-ui 方法,它工作正常。此外,我的函数不是递归的。那么我应该怎么做才能解决我的问题呢?

当我评论$(this).dialog("close"); 语句时,我的问题解决了,但对话框没有关闭。

编辑

我已经简化了我的问题。在最简单的形式中,当我单击“X”(窗口的关闭按钮)时,我仍然得到同样的错误:

 jsPlumb.bind("dblclick", function(c) {

        $( "#dialog-confirm" ).dialog({
          resizable: false,
          width:400,
          height:250,
          modal: true    
        });
    });

【问题讨论】:

  • 你有一些递归的事情正在发生......复制的小提琴将有助于解决这个问题......
  • @GuruprasadRao 如你所见,函数中没有任何递归操作
  • 你能在小提琴中创建问题吗?
  • @GuruprasadRao,恕我直言,你为什么要为这么小的一段代码做个小提琴?我问它是因为我以前从未创作过小提琴。
  • @zwlayer 检查您在页面中的引用是否只有一个或多个,如果有多个引用,则有时会发生这种情况。

标签: javascript jquery jquery-ui


【解决方案1】:

我也得到了这个并通过删除解决了

modal: true,

https://stackoverflow.com/a/33199170/6284848找到解决方案

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-21
    • 1970-01-01
    • 2011-08-31
    • 1970-01-01
    • 2021-11-03
    • 1970-01-01
    • 2020-08-24
    • 2019-11-30
    相关资源
    最近更新 更多