If you just want to submit a form and have it wizz off to somewhere other than the all items view then you want somethig like this
<input type="button" value="Form Action" name="btnFormAction" onclick="javascript: {ddwrt:GenFireServerEvent('__commit;__redirect={your address goes here with no quotes}')}" /&gp;
However if you want the redirect to be dynamic - and of course that is what you want
then MR autosponge has the answer here
http://autosponge.spaces.live.com/blog/cns!D7F85948C20F0293!233.entry
However what this post doesn't say explicitly is what to do when you want to redirect to a child site that or to a child list so you need the ID of the item to generate the URL - here's what I used
<xsl:variable name="dvt_1_automode">0</xsl:variable>
<xsl:param name="ListItemId">
<xsl:variable name="rec"<>xsl:value-of select="@Title"></xsl:variable>
<xsl:variable name="RedirectLoc">https://blah/sites/isms/<xsl:value-of select="/dsQueryResponse/Rows/Row/@Title"></xsl:variable
or
<xsl:variable name="RedirectLoc">https://blah.com/auditrecnfollowups.aspx?recid=<xsl:value-of select="/dsQueryResponse/Rows/Row/@Title"/>%lt;/xsl:variable>
the xpath /dsquery/Rows/Row/@Title is the important bit that uniquely identifies the attribute. This cost me much swearing, the chief reason being that when the redirect url is wrong IN ANY WAY it just does nothing and gives you a 404 so the only way to test this is to have the $redirectloc redisplayed on the screen till its right.