单击<a href=""> link</a>时如何启动jquery对话框

时间:2009-08-25 14:15:09

标签: jquery dialog

如何在单击链接时启动jquery对话框

这似乎不起作用

 <script type="text/javascript">
  $(document).ready(function() {

  $("a.To").click(function(e) {
      e.preventDefault();
      $("#dialog").dialog({height:300});
  });

在体内:

<a href="#" id="To">To</a>

5 个答案:

答案 0 :(得分:11)

对于id,你应该使用#:

$("a#To")

Dot适用于课程。

答案 1 :(得分:4)

我最近这样做是为了确认我的cms中的删除链接。首先,您应该实例化一个对话框窗口(如果您单击对话框上的关闭然后再次打开它,它会显示出来......否则,它会被破坏):

$(document).ready(function()
{
    /**
     * Create a dialog box for confirming deletes.
     * This creates the box at domready. The box is opened
     * by a call to dialog("open") in the delete link.
     */
    $("#delete-dialog").dialog({
        autoOpen   : false,
        bgiframe   : true,
        buttons    : {
            "Yes, I'm sure" : function()
            {
                $(this).dialog("close");
                var href = $(this).dialog("option", "href");
                var row = $(this).dialog("option", "row");
                $.doDelete(href, row);
            },
            "Cancel" : function()
            {
                $(this).dialog("close");
            }
        },
        height     : 150,
        modal      : true,
        overlay    : {
            backgroundColor : "#000000",
            opacity         : 0.75
        },
        resizable : false
    });
});

然后“挂钩”a标签(仍然在document.ready块中):

/**
 * Make all delete links confirm before sending to delete path.
 */
$("a.delete-href").live("click", function(event) 
{
    event.preventDefault();

    var href = $(this).attr("href");
    var row = $(this).parent().parent();

    // pass some custom options to the dialog
    $("#delete-dialog").dialog("option", "href", href);
    $("#delete-dialog").dialog("option", "row", row);
    // open the previously init'ed dialog
    $("#delete-dialog").dialog("open");
});

答案 2 :(得分:2)

您使用班级选择器,但您正在寻找ID ...您需要以下内容。

$("#To").click(function(e) {
      e.preventDefault();
      $("#dialog").dialog({height:300});
  });

答案 3 :(得分:1)

由于您选择了id属性,因此正确的选择器为"a#To"而不是"a.To"

答案 4 :(得分:0)

代码:

$("#dialog").dialog({height:300});

将构建对话框,打开对话框的代码是:

$("#dialog").dialog("open");

编辑虽然,我认为默认情况下autoOpen设置为true,因此除非您的选择器已损坏,否则您的代码应该可以正常工作。我建议将autoopen设置为false并使用open param打开对话框(这样,无论何时尝试打开它都不需要重建它):

$("#dialog").dialog({height:300, autoOpen:false});