Mercurial > urweb
view demo/subforms.ur @ 1726:4df4521fbd3b
Removed excess zero byte from empty pages.
Zero byte sometimes breaks http tunneling in Safari. Empty page is a "Not Modified" response for app.js
author | Vladimir Shabanov <vshabanoff@gmail.com> |
---|---|
date | Wed, 25 Apr 2012 03:07:07 +0400 |
parents | 0084af7af35a |
children | be0c4e2e488a |
line wrap: on
line source
fun sub r = let fun sub' ls = case ls of [] => <xml/> | r :: ls => <xml> <li>{[r.Num]} = {[r.Text]}</li> {sub' ls} </xml> in return <xml><body> {sub' r.Lines} </body></xml> end fun subforms n = if n <= 0 then <xml/> else <xml> <entry> <hidden{#Num} value={show n}/> <li>{[n]}: <textbox{#Text}/></li> </entry> {subforms (n - 1)} </xml> fun form n = return <xml><body> <form> <subforms{#Lines}> {subforms n} </subforms> <submit action={sub}/> </form> <a link={form (n + 1)}>One more blank</a><br/> {if n > 0 then <xml><a link={form (n - 1)}>One fewer blank</a></xml> else <xml/>} </body></xml> fun main () = form 1