CanJS jQuery Template

Includes jQuery, CanJS and all of its plugins. Use it as a starting point when you want to demo something.

HTML

<script src="http://canjs.us/release/latest/can.jquery.js"></script>
<script src="http://canjs.us/release/latest/can.construct.proxy.js"></script>
<script src="http://canjs.us/release/latest/can.control.plugin.js"></script>
<script src="http://canjs.us/release/latest/can.view.modifiers.js"></script>
<script src="http://canjs.us/release/latest/can.construct.super.js"></script>
<script src="http://canjs.us/release/latest/can.object.js"></script>
<script src="http://canjs.us/release/latest/can.ejs.js"></script>
<script src="http://canjs.us/release/latest/can.map.attributes.js"></script>
<script src="http://canjs.us/release/latest/can.map.backup.js"></script>
<script src="http://canjs.us/release/latest/can.map.delegate.js"></script>
<script src="http://canjs.us/release/latest/can.map.setter.js"></script>
<script src="http://canjs.us/release/latest/can.map.validations.js"></script>
<script src="http://canjs.com/release/latest/can.fixture.js"></script>
<script src="http://canjs.com/release/latest/can.stache.js"></script>
<!-- YOUR CODE HERE -->
<div id="selects"></div>

<script id="select-template" type="text/mustache">
    {{#selects}}
        <input can-value = 'value' />
    {{/selects}}
</script>

JavaScript

var InputModel = can.Model.extend({}, {
    value: null,
    setValue: function(value) {
        this.value = value;
    },
    getValue: function() {
        return this.value;
    }
});

var SelectController = can.Control.extend({
    init: function() {
    	this.list = new can.List();
    },
    
    render: function() {
        this.element.html(can.view("#select-template", {
            selects: this.list
        }));
        
        //setTimeout(function() {
            $("#selects input").last().focus();
        //}, 0)
    },
    
    addItem: function(model) {
        this.list.push(model)
    }
});

var selectController = new SelectController("#selects", {});
selectController.render();

selectController.addItem(new InputModel());