user763460
user763460

Reputation: 221

jquery dialog on button click

I'm trying to get a jquery dialog to launch on a button click but does not seem to be working. Any help would be appreciated:

    $('#wrapper').dialog({
        autoOpen: false,
        title: 'Basic Dialog'
    });
    $('#opener').click(function() {
        $(this).dialog('open');
        return false;
    });
    
    
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.min.js"></script>
<button id="opener">Open the dialog</button>
    <div id="wrapper">
    <p>Some txt goes here</p>
    </div>

Thanks!

Upvotes: 4

Views: 39363

Answers (3)

Umar Asghar
Umar Asghar

Reputation: 4044

Try this code, it works for me.

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Dialog - Default functionality</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="https://jqueryui.com/resources/demos/style.css">
<script>
$(document).ready(function() {
  $(function() {
    console.log('false');
    $( "#dialog" ).dialog({
        autoOpen: false,
        title: 'Test'
    });
  });

  $("button").click(function(){
    console.log("click");
        $(this).hide();
        $( "#dialog" ).dialog('open');
    });
}); 
</script>
</head>
<body>
<button id="open">Open Dialog box</button> 
<div id="dialog" title="Basic dialog">
<p>This is the default dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon.</p>
</div>
</body>
</html>

Upvotes: 1

cssyphus
cssyphus

Reputation: 40038

Ensure you are referencing the jQuery and jQueryUI libraries, as per my example below.

Try this:

<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/jquery-ui.min.js"></script>
        <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/themes/smoothness/jquery-ui.css" rel="stylesheet" type="text/css" media="all" />

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

                $('#wrapper').dialog({
                    autoOpen: false,
                    title: 'Basic Dialog'
                });
                $('#opener').click(function() {
                    $('#wrapper').dialog('open');
//                  return false;
                });
            });
        </script>
    </head>
<body>

<button id="opener">Open the dialog</button>
<div id="wrapper">
    <p>Some txt goes here</p>
</div>

Upvotes: 3

Sushanth --
Sushanth --

Reputation: 55750

This line

$(this).dialog('open');  // this here corresponds to the #opener div

supposed to be

$('#wrapper').dialog('open');

Also extra braces }); .. Can be ignored if this is the closing brace for DOM Ready handler

Check Fiddle

Upvotes: 7

Related Questions