X-Git-Url: http://git.roojs.org/?p=roojs1;a=blobdiff_plain;f=Roo%2FTemplate.js;h=4f8e30281afe8a961bae09bb01001ee20415f749;hp=b415e80e55e36d60046be21b52104a7911999f63;hb=0b69a11b1055a6d3a3fd0719bdd58b5a235de0e4;hpb=376df4906bc88a5bc987be0e17ae624bd63b2dac
diff --git a/Roo/Template.js b/Roo/Template.js
index b415e80e55..4f8e30281a 100644
--- a/Roo/Template.js
+++ b/Roo/Template.js
@@ -25,7 +25,9 @@ var t = new Roo.Template({
});
t.append('some-element', {id: 'myid', cls: 'myclass', name: 'foo', value: 'bar'});
-* For more information see this blog post with examples: DomHelper - Create Elements using DOM, HTML fragments and Templates.
+* For more information see this blog post with examples:
+* DomHelper
+ - Create Elements using DOM, HTML fragments and Templates.
* @constructor
* @param {Object} cfg - Configuration object.
*/
@@ -44,13 +46,16 @@ Roo.Template = function(cfg){
// bc
this.html = cfg;
}
-
+ if (this.url) {
+ this.load();
+ }
};
Roo.Template.prototype = {
/**
- * @cfg {String} url The Url to load the template from.
+ * @cfg {String} url The Url to load the template from. beware if you are loading from a url, the data may not be ready if you use it instantly..
+ * it should be fixed so that template is observable...
*/
url : false,
/**
@@ -63,13 +68,9 @@ Roo.Template.prototype = {
* @return {String} The HTML fragment
*/
applyTemplate : function(values){
+ //Roo.log(["applyTemplate", values]);
try {
- _t= this;
- if (this.url) {
- this.afterLoad = function () { _t.applyTemplate(values); };
- this.load();
- return;
- }
+
if(this.compiled){
return this.compiled(values);
}
@@ -108,19 +109,18 @@ Roo.Template.prototype = {
},
loading : false,
-
- afterLoad : false,
-
+
load : function ()
{
if (this.loading) {
return;
}
+ var _t = this;
this.loading = true;
this.compiled = false;
- var _t = this;
+
var cx = new Roo.data.Connection();
cx.request({
url : this.url,
@@ -128,10 +128,11 @@ Roo.Template.prototype = {
success : function (response) {
_t.loading = false;
_t.html = response.responseText;
- _t.afterLoad && _t.afterLoad();
- },
+ _t.url = false;
+ _t.compile();
+ },
failure : function(response) {
- Roo.log("Template failed to load from " + url);
+ Roo.log("Template failed to load from " + _t.url);
_t.loading = false;
}
});