Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
<link class="jsbin" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/jquery-ui.min.js"></script>
  <script class="jsbin" src="http://github.com/downloads/SteveSanderson/knockout/knockout-2.0.0.js"></script>  
<meta charset=utf-8 />
<title>JS Bin</title>
<!--[if IE]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<style>
  article, aside, figure, footer, header, hgroup, 
  menu, nav, section { display: block; }
</style>
</head>
<body>
  <div id="myDialog">
    <div id="myAccordion" data-bind="foreach: list, accordion: {}">
      <h3><a href="#" data-bind="text: Name"></a></h3>
      <div><p data-bind="text: Age"></p></div>
    </div>
  </div>
  <button data-bind="click: ShowMe">Show Dialog</button>
  <button data-bind="click: AddNew">Add Item</button>
</body>
</html>
 
function testVM() {
  var self = this;
  self.list = ko.observableArray([{Name: "Name 1",Age: 23},{Name: "Name 2",Age: 40}]);
  self.AddNew = function() {
    self.list.push({Name: "Name 3",Age:80});
  };
  
  self.ShowMe = function() {
    $("#myDialog").dialog("open");
  };
  
}
$(document).ready(function() {
  ko.bindingHandlers.accordion = {
    init: function(element, valueAccessor) {
        $(element).accordion();
    },
    update: function(element, valueAccessor) {
      $(element).accordion("destroy").accordion();
    }
  };
  
 
  ko.applyBindings(new testVM());
  $("#myDialog").dialog({
    minHeight:400,
    minWidth:400,
    modal: true,
    autoOpen: false
  });
});
Output

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
anonymouspro
0viewers