单击链接时,jquery ui对话框无法在html中打开

时间:2015-04-27 04:59:59

标签: javascript jquery html css jquery-ui

我试图在点击链接时在html页面中打开一个对话框,但是它显示了一个错误,例如对象不支持属性或方法'对话'点击即可。

请检查下面的代码

源文件

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

对话框代码

$("#link").click(function(c){

                e.preventDefault();
          var dialog = $('<p>Are you sure?</p>').dialog({

            buttons: {
                "Yes": function() {alert('you chose yes');},
                "No":  function() {alert('you chose no');},
                "Cancel":  function() {
                    dialog.dialog('close');
                }
            }
        });
            }); 
            });

2 个答案:

答案 0 :(得分:0)

您需要一个div设置,它将成为对话框,如下例所示:

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI Dialog - Animation</title>
  <link rel="stylesheet"href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="/resources/demos/style.css">
  <script>
  $(function() {
    $( "#dialog" ).dialog({
      autoOpen: false,
      show: {
        effect: "blind",
        duration: 1000
      },
      hide: {
        effect: "explode",
        duration: 1000
      }
    });
 
    $( "#opener" ).click(function() {
      $( "#dialog" ).dialog( "open" );
    });
  });
  </script>
</head>
<body>
 
<div id="dialog" title="Basic dialog">
  <p>This is an animated dialog which is useful for displaying information.     The dialog window can be moved, resized and closed with the 'x' icon.</p>
</div>
 
<button id="opener">Open Dialog</button>
 
 
</body>
</html>

Here's a jsbin with a working example with buttons

答案 1 :(得分:0)

替换&#34; c&#34;用&#34; e&#34;并删除末尾的结束括号。你有一个太多了。

$("#link").click(function(e){

            e.preventDefault();
      var dialog = $('<p>Are you sure?</p>').dialog({

        buttons: {
            "Yes": function() {alert('you chose yes');},
            "No":  function() {alert('you chose no');},
            "Cancel":  function() {
                dialog.dialog('close');
            }
        }
    });
        });