On Monday, June 21, 2021 at 5:20:24 PM UTC-7 [email protected] wrote:
> ... by deleting the temp tiddler the form would be cleared... However,
> that functionality isn't occurring
>
> \define temp() $:/temp/input/$(currentTiddler)$
>
> | Label:|<$edit-text tiddler=<<temp>> field="label"/> |
> | From Tag:|<$edit-text tiddler=<<temp>> field="fromtag"/> |
> | Target:|<$edit-text tiddler=<<temp>> field="target"/> |
> | Target Tag:|<$edit-text tiddler=<<temp>> field="targettag"/>|
>
> <$tiddler tiddler=<<temp>>>
> <$button> <$view field="label">join tiddlers</$view>
> <$action-setfield $tiddler={{!!target}} text={{{
> [tag{!!fromtag}get[text]join[]] }}} tags={{!!targettag}} />
> <$action-deletetiddler tiddler=<<temp>> />
> </$button>
> </$tiddler>
>
Let's suppose the containing tiddler is named "MyForm". Then the value of
<<temp>>, as defined in the macro, will be *$:/temp/input/MyForm*.
However, once you use <$tiddler tiddler=<<temp>>> to surround the $button
code, the value of <<temp>> *within* the $button code will be
*$:/temp/input/$:temp/input/MyForm*, so the $action-deletetiddler refers to
the wrong tiddler title and does nothing.
The solution is to move the <$tiddler tiddler=<<temp>>> so it only affects
the $action-setfield. Here's a button definition that will work as you
intend:
<$button> <$view tiddler=<<temp>> field="label">join tiddlers</$view>
<$tiddler tiddler=<<temp>>>
<$action-setfield $tiddler={{!!target}} text={{{
[tag{!!fromtag}get[text]join[]] }}} tags={{!!targettag}} />
</$tiddler>
<$action-deletetiddler $tiddler=<<temp>> />
</$button>
Notes:
* The $view widget uses both tiddler=... and field=... to show the correct
label text without being inside the <$tiddler tiddler=<<temp>>>
* The $action-setfield is still surrounded by the $tiddler widget, so that
the field references, {{!!target}}, {!!fromtag} and {{!!targettag}} still
get their values from the temp tiddler
* However, the $action-deletetiddler is no longer within the $tiddler
widget, so the <<temp>> value referenced there uses the original
$(currentTiddler)$ value (i.e., "MyForm") to construct the correct temp
tiddler name
* Also note that the parameter for $action-deletetiddler is $tiddler=...
not tiddler=...
enjoy,
-e
--
You received this message because you are subscribed to the Google Groups
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/tiddlywiki/f5f3d5de-a5f8-4493-a13e-0d8af8acfa0cn%40googlegroups.com.