Pausing notifications in KnockoutJS
http://www.knockmeout.net/2011/04/pausing-notifications-in-knockoutjs.html
HTML
<script src="http://rniemeyer.github.com/KnockMeOut/Scripts/jquery.tmpl.js"></script>
<script src="http://rniemeyer.github.com/KnockMeOut/Scripts/knockout-latest.debug.js"></script>
<div id="customersArea" data-bind="foreach: people">
<div class="section" data-bind="attr: { 'personid': PersonId }" >
<div class="sectionActions">
<div><a class="action" href="#" data-bind='click: $parent.removePerson'>Remove</a></div>
</div>
<div class="sectionText">
<span data-bind="text:LastName"></span>
<span data-bind="text:FirstName"></span>
<span data-bind="if:MailingAddress">
<span data-bind="with:MailingAddress">
<span data-bind="text:StreetPartOne"> </span>
<span data-bind="text:StreetPartTwo"> </span>
<span data-bind="text:City"></span>
<span data-bind="text:PostalCode"></span>
</span>
</span>
<span data-bind="if:EmailAddress, text:EmailAddress"></span>
<span data-bind="if:MainPhoneNumber, text:MainPhoneNumber"></span>
<span data-bind="if:MobilePhoneNumber, text:MobilePhoneNumber"></span>
</div>
<div class="sectionOptions">
</div>
</div>
</div>
JavaScript
function User(id, name) {
this.id = ko.observable(id);
this.name = ko.observable(name);
this.isActive = ko.observable(false);
}
var viewModel = {
people: ko.observableArray(),
add: function(person) {
this.people.push(person);
}
};
ko.applyBindings(viewModel , $("#customersArea")[0]);
try{viewModel.add({PersonId:33});}
catch(e){alert(e);}
try{viewModel.add({PersonId:44});}
catch(e){alert(e);}