• Register
  • Log In
  • Home
  • Quick Start
    • Configurator
    • Download YUI 3
  • Documentation
    • User Guides
    • Examples
    • API Docs
    • Environments
    • Tutorials
  • Community
    • Gallery
    • Blog
    • Forums
    • YUI Theater
    • Calendar
  • Contribute
    • YUI on GitHub »
    • File a Ticket
    • View Tickets
    • Dashboard
  • Other Projects
    • Shifter »
    • Yogi »
    • YUI 2
    • YUI Doc »
    • YUI Test
    • YUI Website
    • YUI Compressor »
    • YUI Builder »
    • YUI PHP Loader
    • Grid Builder »
    • Skin Builder »
  • YUI
  • >
  • Community
  • >
  • Gallery

Gallery

Modules

  • Home
  • Featured
  • Popular
  • New
  • All

Documentation

  • Yogi Documentation
  • Shifter Documentation
  • Developer Guide
  • Module Setup

Tag Cloud

Context Navigation

    YUI Library is not responsible for bugs or support with this module. It is available as a free service. For support please contact the module owner with the provided links.

    databinding (gallery-binding)

    Last Updated: 05/18/12
    + 0 -

    Paul

    See 1 more by this user.

    Created: 05/18/12
    Project: YUI 3
    License: YUI BSD
    YUI Version: 3.5.1
    Free for use.

    Goals of this Widget:

    • Avoid to write glue code - UI vs. Model
    • Automatic update of all elements

    • Tags:
    • YUI
    • databinding
    • binding
    • Download
    • Docs
    • Homepage
    • Bugs
    • Source
    • Example
    • Forum
    • History

    Code Sample

    YUI({filter: 'raw'}).use('gallery-binding', 'dump', 'event', 'cssbutton', function(Y) {
        Y.log('start ...');
        var binding = new Y.Binding.DataBinding();
        // binding anything by hand
        binding.bindProperty('#txtName', 'value', 'person.name', 'change');
     
        // use auto bind
        binding.bindAll('#form1');
        binding.bindAll('#form2');
     
        // come control values
        var all = Y.one('#all'), path = Y.one('#path'), newValue = Y.one('#newValue');
        binding.after(Y.Binding.DataBinding.Event.Change, function(e) {
            all.set('value', Y.dump(binding.getData()));
            path.setContent(e.attrName); // or e.path
            newValue.setContent(e.newVal);
        });
     
        all.set('value', Y.dump(binding.getData()));
     
        Y.one('#cmdDestroy').on('click', function(e) {
            // well YUI is not able to destroy simply sub nodes
            // means we need to code this on our own here:
            Y.one('#form2').get('children').each(function (node) {
                node.destroy();
            });
     
            Y.one('#form2').setAttribute('style', 'background-color: red');
        });
    });

    © 2006-2013 Yahoo! Inc. All rights reserved.
    All code on this site is licensed under the BSD License unless stated otherwise.
    About This Site · Security Contact Info