jQuery 对话框不会关闭(使用 .load 数据)

标签 jquery dialog jquery-dialog

在我的页面(我们称之为页面 A)上,我有一个 id 为 customOrderEdit 的 jQuery 对话框。在对话框中,我使用 $("#customOrderEdit").load("/url/to/page.php") 加载另一个页面(我们称之为页面 B)。

现在我想使用自定义按钮关闭对话框,但它不会关闭。我已经尝试了很多东西(在谷歌、stackoverflow 等上找到),但似乎都不起作用。关闭对话框的代码在 A 页面还是 B 页面并不重要,只要它关闭我就很高兴。

我在页面 A 上尝试过的代码:

$("body").on('click', '.cancelUpdateOrder', function(){
    console.log("Test"); //it displays the test console log, but it doesn't close
    $("#customOrderEdit).dialog( "close" );
    return false;
});

我在页面 B 上尝试过的代码:

$(".cancelUpdateOrder").on('click', function(){
        $('#customOrderEdit').dialog('close');
        return false;
});

我还尝试以不同的方式调用点击函数:

  • $(".cancelUpdateOrder").click(function(){ }});
  • $(".cancelUpdateOrder").live('click', function(){ }});
  • $(".cancelUpdateOrder").on('click', function(){ }});

结束部分:

  • $(".ui-dialog").dialog( "close");
  • window.parent.$('#customOrderEdit').dialog('close');
  • $('#customOrderEdit', window.parent).dialog("close");

可能还有一些我不记得了。

有谁知道我做错了什么并可以为我提供正确的代码?

最佳答案

类选择器可以返回对象列表,然后您可以尝试使用 each 来迭代它们:

$('.cancelUpdateOrder').each( function () {
    $(this).on('click', function () {
        $('#customOrderEdit').dialog('close');
        return false;
    })
});

如果不起作用,您可以尝试放置 console.log 来跟踪是否到达了正确的元素。

希望对你有帮助

关于jQuery 对话框不会关闭(使用 .load 数据),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32653669/

相关文章:

javascript - 以编程方式触发下拉菜单 'onChange'

javascript - jQuery 事件委托(delegate)和 PJAX 事件不起作用

android - 为什么 myButton.setOnClickListener() 不将 DialogInterface.OnClickListener 作为参数?

android - 将 DatePicker 对话框的年份限制为仅当前年份

javascript - JQuery 对话框 : How to find clicked button inside the button clicked event

jquery live 和 : problem

JSON对象内的Javascript搜索

Javascript:从按钮调用对话框

javascript - 溢出时页面上移 :hidden css property is set to <html> tag only in Firefox

javascript - iframe 内的 JQuery UI 对话框