[MJ] - Scriptaculous [http://wiki.script.aculo.us] is a framework to simplify the [JavaScript] part of [Ajax]. Because it is server implementation agnostic, it can be used to add Ajax functionality to [tclhttpd]. Note that according to the wiki, it is already integrated in [OpenACS]. One of the main advantages of using a framework like this is that all the XmlHttpRequest and browser [DOM] differences are handled by the framework. To install it download the javascript files from the URL above and put them in the htdocs/javascripts directory of your tclhttpd installation. In you custom directory add the file ajax.tcl with contents: proc ajax {} { # Initial call: build page set ::ajax text/html set head { } set body {
} set result "$head$body" return $result } proc ajax/complete {args} { puts $args set txt [lindex $args 1] set ajax/complete text/xml set result "] puts $result return $result } Direct_Url /ajax ::ajax And for nice markup the following in httpdocs/css/scriptaculous.css div.autocomplete { position:absolute; width:250px; background-color:white; border:1px solid #888; margin:0px; padding:0px; } div.autocomplete ul { list-style-type:none; margin:0px; padding:0px; } div.autocomplete ul li.selected { background-color: #ffb;} div.autocomplete ul li { list-style-type:none; display:block; margin:0; padding:2px; /* height:32px; */ cursor:pointer; } Now we have a text field with autocompletion on the currently defined Tcl commands. ---- [Category Internet]