【问题标题】:Close jQuery dialog on custom button在自定义按钮上关闭 jQuery 对话框
【发布时间】:2017-11-03 14:12:54
【问题描述】:

我正在使用来自链接jQuery Confirm的对话框

$.dialog({
    title: '',
    content:'test' ,
    animation: 'scale',
    boxWidth: '50%',
    useBootstrap : false
});

现在我想在点击按钮时关闭它。有三个自定义按钮,我在每个按钮上执行不同的功能,然后想要关闭对话框。因此,在每个按钮上,我都会调用 onclik 函数,其中完成了一些任务。然后我想关闭对话框

<button onclick="update_details(some parameters);">Close</button>

function update_details(parameters)
{
   // task here depend on parameters  
   // Close dialog box here
}

这个按钮在对话框里面。我尝试了在这里找到的可能解决方案,但没有奏效。我使用类隐藏它。但后来我无法重新打开它。还尝试在 $dialog 上调用 close

更新:

$.ajax({
  type:'POST',
  cache:false,
  async:false,
  url: 'url here',
  data:{ },
  success:function(resp){   
    if(resp!='')
    {
        for(var i =0; i < somelenghth from resp; i++)
        {
            str = str + '<button onclick="update_details(parameters);" class="btn btn-default">name</button><br><br>';
        }           

        $.dialog({
              title: '',
              content:str ,
              animation: 'scale',
              boxWidth: '50%',
              useBootstrap : false
          });
    }
  }
});

【问题讨论】:

  • 请告诉我们您尝试了哪些“可能的解决方案”以及它们失败的原因。
  • 文档明确声明 .dialog():“删除按钮并明确显示 closeIcon (×)” - 您确定不想使用 .confirm() 代替吗?
  • Connum : 更新问题
  • 我仍然看不到您尝试在哪里实现关闭按钮功能。
  • 您添加的指向 jQuery Confirm 的链接包含您正在寻找的答案。

标签: javascript jquery


【解决方案1】:

如果您将对话框的内容放在标签中并为其分配一个 ID,那么您将能够从外部函数中引用它。此外,您可能希望添加关闭事件以在每次关闭时销毁对话框。

var closedFunction = function() {
    $(#dialogDiv).dialog( "destroy" );
};

$(#dialogDiv).dialog({
    title: '',
    close: closedFunction,
    content:'test' ,
    animation: 'scale',
    boxWidth: '50%',
    useBootstrap : false
});

因此,通过 ID 引用对话框内容,您可以将其包含在按钮代码中以关闭它。

<button onclick="update_details(some parameters);">Close</button>

function update_details(parameters)
{
    $(#dialogDiv).dialog( "close" );
    // task here depend on parameters  
}

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-16
    • 2014-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-05
    • 1970-01-01
    • 2011-08-08
    相关资源
    最近更新 更多