Opened 11 years ago
Closed 8 years ago
#11701 closed feature (patchwelcome)
dojo.parser.parse ignores dojoType on the root element; cannot process document fragments
Reported by: | MaxMotovilov | Owned by: | bill |
---|---|---|---|
Priority: | low | Milestone: | tbd |
Component: | Parser | Version: | 1.5 |
Keywords: | Cc: | ||
Blocked By: | Blocking: |
Description
As part of the implementation for a new template engine I have to invoke dojo.parser.parse() on an HTML document fragment produced by dojo._toDom() before the fragment is inserted into its final destination within the document. A straightforward approach is hindered by 2 related issues:
1) dojo.parser.parse() cannot accept an HTML document fragment as its first argument, only a single node;
2) it does not properly parse the attributes (i.e. recognize dojoType) on the node itself, only on its descendants, therefore a simple loop over all nodes in the fragment does not help either.
My workaround is to create a temporary "master" node, dojo.place the fragment into it and parse the master, then let it go out of scope. This is definitely a kludge and a replication of the functionality already existing within dojo._toDom(). It would be nice to either extend the capabilities of dojo.parser.parse() or add an option to dojo._toDom() to automatically invoke the parser on the master before extracting the fragment. And while you're at it, how about making dojo._toDom() a proper user-accessible function?
Change History (2)
comment:1 Changed 9 years ago by
Priority: | high → low |
---|---|
Type: | defect → feature |
comment:2 Changed 8 years ago by
Resolution: | → patchwelcome |
---|---|
Status: | new → closed |
While this maybe a good idea, maybe, it isn't really on the roadmap for the parser at this point in time, although a patch would be welcome.