For all the “items” controls that have a “Template” configuration property to define the items (for example: combobox, dropdownlist) the documentation tells me the template property can be a string or function. If a function is used this function should return a string presentation of the Html you want to be rendered. I would like to have this template functionality enhanced so the function can also return an HtmlElement or HtmlFragment instead of a string. So the template function is fully responsible to construct the Html that will be inserted into the dom. Your template processing only has to check if the return type of the function is an instance of a HtmlElement or HtmlFragment an take the result of the function as it is. No further processing needed. Reasoning behind this feature request is: In my development I try to move away from string based definition of Html as far as possible. Because this string based definition of Html and Htmltemplates is the weak part of a modern SPA architecture. No designtime checking of the content of these Html with its binding expressions is possible. Therefore I developed a component to define my HtmlElements or HtmlFragments in a strong typed way. This component has full support for designtime checking of properties and binding expressions. The result from my component however is an HtmlElement not a “String”. Now i have to work around this by serializing the HtmlEment to a string. This not only is a waste of performance but also makes it impossible to attach event handler to the hmlElement or it children.
HI, It will be just nice to implement nested templates, like is describe here in the forum. http://www.telerik.com/forums/nested-template-in-external-script
SVG paths are not rendering with kendo templates binding with MVVM view model. For reference: http://jsfiddle.net/qqzmZ/9/. Known Issue: In firefox, when we inspect svg element and edit that svg tag element (right click and select "Edit Svg") then the svg is rendering. But in IE 10 and Safari, no path tags are found in svg tag. Other browser except Chrome, require the elements to be created with the correct namespace. Since the template output is a string this typically involves a DOMParser. The code works out to something like this: var parser = new DOMParser(); var doc = parser.parseFromString(svgString, "text/xml"); var node = document.adoptNode(doc.documentElement); // node can now be appended to the current document Can this code be supported with kendo templates to render SVG tags.
Because of some scenarios the "#" chars are restriced. So I want to use other char instead of. May be we can set the openTag and closeTag instead of "#". For example, <% and %>, [% and %] etc. May be this is flexible.
If you edit a record in a grid it automatically validates against the validation rules defined in the schema.Model. However if you use a custom editor template you have to manually add the html attributes such as required to each input field. It would be nice to be able to use the same validation rules defined in the schema.Model for custom editor templates as well. Thanks, Dan
It would be nice to use your high performing template library with KnockoutJS
Add Server-side rendering engines for templates. I would love them in .Net first and then php and then Ruby. Having server side is huge for SEO and with a rendering engine could basically take a huge chunk of server code out of the mix and just replace with templates.
Hi, I have noticed your planned development of a listview widget, if the listview and templates are to be synonymous; it might be worth your while to look at the unobtrusive pure approach. http://beebole.com/pure/
The template is not so friendly with document db such as MongoDB. Data in MongoDB are schema free, it means some data fields may be missing. It may lead to an error while rendering templates. jQuery's API can have a optional arg to provide default value, but I don't how to do it in Kendo.
Hi, We're building a large JS app that uses jQuery templates. When the number of templates got out of hand, I moved it to another HTML page, and did a $.get("templates.html") and appended that to the DOM. We load each template one by one. We wanted to do parallel loading using something similar to head.js Maybe you guys can come up with a way of doing it neater. Maybe something like this: kendo.templates.remote = ['templates1.html', 'templates2.html']; kendo.ready(function(){ //kick ass! });