Hi, Did you solve it allready? On Mar 22, 8:21 pm, Måns <[email protected]> wrote: > Here's my go at > it:http://dl.dropbox.com/u/3105342/TW/karakaterer/karakterMM.html#testCo... > Maybe you can tell me what to change - to make it work... > > Regards Måns Mårtensson > > On 22 Mar., 16:18, Måns <[email protected]> wrote: > > > > > > > > > Hi Mario and Eric > > > Can I use the transclusion like this??: > > 1) I create a tiddler [[CountCheckmarks]] > > {{count{...}}}<script> > > var a=jQuery(place.parentNode.lastChild).find('.chkOptionInput') > > var c=0; > > for (var i=0; i<a.length; i++) c+=a[i].checked?1:0; > > return c.toString(); > > </script> > > 2) > > I another tiddler I use a checkbox toggle like this: > > {{CountCheckmarks{ > > |<<tiddler Check##toggletag with: 1>>| > > |<<tiddler Check##toggletag with: 2>>| > > > }}}<<tiddler CountCheckmarks>> > > > Ps: > > 2b) [[Check##toggletag]] is: > > !toggletag > > <html><hide linebreaks><form style="display:inline"> > > <input type="checkbox" name='c' onclick=" > > var > > tid=story.findContainingTiddler(this).getAttribute('tiddler'); > > store.setTiddlerTag(tid,this.checked,'$1'); > > "> > > </form></html><script> > > var > > t=store.getTiddler(story.findContainingTiddler(place).getAttribute('tiddler > > ')); > > place.lastChild.getElementsByTagName('form') > > [0].c.checked=t.isTagged('$1'); > > </script> > > !end toggletag > > > I've tried this - but it doesn't seem to work for me.. - it returns > > "...0 " > > > Regards Måns Mårtensson > > > On 22 Mar., 12:22, Eric Shulman <[email protected]> wrote: > > > > > <script> > > > ... > > > > createTiddlyElement(place,"span",null,null, cnt); > > > > </script> > > > > Note: you don't need to use createTiddlyElement(...) to produce output > > > from embedded inline javascript. Simply return a TEXT value, and it > > > will be automatically 'wikified' and rendered where the script is > > > embedded. In your suggested script, since 'cnt' is a numeric value, > > > you would write: > > > return cnt.toString(); > > > > Also, the technique of looking for all checkboxes contained with > > > {{count{...}}} is not sufficient: suppose you have rendered several > > > different tiddlers, each with checkboxes wrapped in {{count{}}}. In > > > that case, jQuery would find the checkboxes in all the rendered > > > tiddlers, not just the current one. > > > > Fortunately, since you are using InlineJavascriptPlugin, there is an > > > alternative: The 'place' variable, which is automatically defined by > > > the plugin for use within scripts, can be used to make *relative* > > > references to the last element rendered into the current tiddler > > > (i.e., 'place.lastChild'), like this: > > > > {{count{...}}}<script> > > > var a=jQuery(place.lastChild).find('.chkOptionInput') > > > var c=0; > > > for (var i=0; i<a.length; i++) c+=a[i].checked?1:0; > > > return c.toString(); > > > </script> > > > > Note: for place.lastChild to refer to the {{count{...}}} element, it > > > must be rendered *immediately* before the inline script (with NO > > > intervening content... not even whitespace). > > > > You can also place the above script into a tiddler (e.g., > > > [[CountCheckmarks]]) and then transclude it, like this: > > > {{count{...}}}<<tiddler CountCheckmarks>> > > > > Important note: when using transclusion, the script is automatically > > > wrapped inside a containing DIV. As a consequence, the relative > > > reference to > > > place.lastChild > > > in the first line of the script needs to be changed to > > > place.parentNode.lastChild > > > like this: > > > var a=jQuery(place.parentNode.lastChild).find('.chkOptionInput') > > > > enjoy, > > > -e > > > Eric Shulman > > > TiddlyTools / ELS Design Studios
-- You received this message because you are subscribed to the Google Groups "TiddlyWiki" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/tiddlywiki?hl=en.

