【问题标题】:Why won't my double click function open jquery dialog box?为什么我的双击功能不会打开 jquery 对话框?
【发布时间】:2011-08-03 23:44:39
【问题描述】:

我有一堆 dblclickable 类的 DIV 和一个 id="dialog-edit" 的 DIV,但是当我双击一个 DIV 时,对话框没有打开。怎么会?嗯...可能与我不知道如何“绑定”它的事实有关... 请帮忙!谢谢!

<script>
$(".dblclickable").dblclick(function (event) {
    var tagsedit = $("#tagsedit"),
        elnameedit = $("#elnameedit"),
        mngredit = $("#mngredit");
    $("#dialog-edit").dialog({
        autoOpen: false,
        height: 300,
        width: 350,
        modal: false,
        zIndex: 101,
        buttons: {
            "Update Element": function () {
                if ($('#eltypeedit option:selected').text() == "Individual Resource") {
                    $(event.target).html(elnameedit.val() + " " + "<hr />" + mngredit.text() + tagsedit.val());
                }
                else {
                    $(event.target).html(elnameedit.val() + " " + $('#eltypeedit option:selected').text() + "<hr />" + mngredit.text() + tagsedit.val());
                }
                $(this).dialog("close");
            },
            Cancel: function () {
                $(this).dialog("close");
            }
        }
    });
});
</script> 

@mr.nicksta 页面加载时我正在搜索的元素肯定尚未加载。双击打开对话框的这些 DIV 是动态的 - 它们本身是由另一个对话框创建的...我认为通过使用 .dblclick 函数,双击 DIV 时会调用该函数?

@crazyarabian 我不希望 autoOpen 为 true,因为我需要多次打开对话框。不止一次。任何时候双击 DIV。

如果仅此功能无法打开对话框,那么这就是我的问题。我想我确实需要一些其他功能来将双击功能“绑定”到对话框打开功能......但我不知道如何。

【问题讨论】:

  • 您是否尝试过使用autoOpen: true?否则,我看不到您实际打开对话框的位置。
  • @pleasehelpneeddesignhelp:欢迎来到 StackOverflow。在jsbeautifier.org 的帮助下,我整理了您的代码缩进。 :o)

标签: jquery events dialog bind double-click


【解决方案1】:

您是否尝试将上述代码包装在文档就绪处理程序中?这可能是因为您的代码在加载 DOM 之前执行,因此您正在搜索的元素尚未加载。通过将其包装在准备好的文档中,它只会在页面的所有元素都已加载时执行,例如

$(function() {
    //your code here
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多