--- /dev/null
+<html>
+ <head>
+ <title>Demo using dojox.dtl._Templated</title>
+ <script type="text/javascript" src="../../../dojo/dojo.js"
+ djConfig="isDebug: true, parseOnLoad: true"></script>
+ <script type="text/javascript" src="../../../dijit/dijit.js"></script>
+ <style type="text/css">
+ @import "../../../dijit/themes/tundra/tundra.css";
+ </style>
+ <script type="text/javascript">
+ dojo.require("dojox.dtl._HtmlTemplated");
+ dojo.require("dijit.form.Button");
+
+ dojo.declare("Fruit", [dijit._Widget, dojox.dtl._HtmlTemplated], {
+ widgetsInTemplate: true,
+ items: ["apple", "banana", "orange"],
+ keyUp: function(e){
+ if((e.type == "click" || e.keyCode == dojo.keys.ENTER) && this.input.value){
+ var i = dojo.indexOf(this.items, this.input.value);
+ if(i != -1){
+ this.items.splice(i, 1);
+ }else{
+ this.items.push(this.input.value);
+ }
+ this.input.value = "";
+ this.render();
+ }
+ },
+ postCreate: function(){
+ this.render();
+ dojo.connect(this.button, "onClick", this, "keyUp");
+ },
+ debug: function(e, verb, fruit){
+ console.debug("You " + verb + " a:", fruit);
+ },
+ // Note, the load tag here is superfluous, since _HtmlTemplate has a dojo.require for it.
+ templateString: '<!--{% load dojox.dtl.contrib.dijit %}--><div><input dojoAttachEvent="onkeyup: keyUp" dojoAttachPoint="input"> <button dojoType="dijit.form.Button" dojoAttachPoint="button">Add/Remove Item</button><ul><!--{% for item in items %}--><li onclick="debug \'ate\' item"><!--{{ item }}--></li><!--{% endfor %}--></ul></div>'
+ });
+
+ dojo.require("dojo.parser");
+ </script>
+ <body class="tundra">
+ <div dojoType="Fruit"></div>
+ </body>
+ </head>
+</html>
\ No newline at end of file