That works beautifully, thanks.

With regards to using custom javascript functions,  I have a function
processKeyPress. It's role is to filter key presses, only send events
to the server upon certain key presses.

I guess the easiest way to handle this would be to pass the function created by:
 {jsonCall("pressed", JsRaw("event.which")).toJsCmd}

into processKeyPress so that it can invoke it if the event.which is
the correct type.

Unfortunately, I can't come up with a way to describe this in inline XML.

<input type="textarea" onkeypress="processKeyPress(event.which,
{jsonCall("pressed", JsRaw("event.which")).toJsCmd})"/>

leaving out the " causes a parse error.. adding the " cause it to be
evaulated as a string.

Any ideas?



On Wed, Feb 24, 2010 at 2:57 PM, David Pollak
<feeder.of.the.be...@gmail.com> wrote:
> Rick,
>
> Here's a simple example:
>
> import net.liftweb._
> import util._
> import http._
> import js._
> import JsCmds._
> import JE._
> import scala.xml.NodeSeq
>
> class Evently extends CometActor {
>
>   // handle an incoming JSON event
>   override def handleJson(in: Any): JsCmd = in match {
>     case JsonCmd("pressed", _, key, _) => SetHtml("info", <b>You pressed
> {key}</b>)
>     case _ => Noop
>   }
>
>   def render =
>   <div>
>   <span id="info"/> <!-- A place to put stuff -->
>   {
>     Script(jsonInCode) // include the JSON callback
>   }
>    <input type="text" onkeypress={jsonCall("pressed",
> JsRaw("event.which")).toJsCmd}/>
>   </div>
> }
>
> So, the handleJson message gets called on the server whenever a key is
> pressed on the client (this example works in non-IE browsers, but that's
> just 'cause I'm using event.which rather than event.keyCode).
>
> Hope this helps.
>
> Thanks,
>
> David
>
>
> On Wed, Feb 24, 2010 at 8:23 AM, Rick R <rick.richard...@gmail.com> wrote:
>>
>> I have a textarea in which I process onKeyUp and onKeyDown commands.
>> The handlers for such things are custom javascript.
>> I would like to invoke functions in a Comet LiftActor /
>> ListenerManager via these custom javascript functions. Is there
>> documentation on the recommended way to do so?
>>
>> It looks like I will have to define the functions within a render call
>> and use the SHtml.ajaxCall function, since the destination url is
>> randomized.  I am just wondering what would be the idiomatic way to do
>> this.
>>
>> This is for a chat style app which processes/distributes data by the
>> keystroke rather than by a  line/post command.
>>
>>
>> I'm open to any ideas / alternate suggestions.
>>
>> Thanks,
>> Rick
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Lift" group.
>> To post to this group, send email to lift...@googlegroups.com.
>> To unsubscribe from this group, send email to
>> liftweb+unsubscr...@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/liftweb?hl=en.
>>
>
>
>
> --
> Lift, the simply functional web framework http://liftweb.net
> Beginning Scala http://www.apress.com/book/view/1430219890
> Follow me: http://twitter.com/dpp
> Surf the harmonics
>
> --
> You received this message because you are subscribed to the Google Groups
> "Lift" group.
> To post to this group, send email to lift...@googlegroups.com.
> To unsubscribe from this group, send email to
> liftweb+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/liftweb?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to lift...@googlegroups.com.
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en.

Reply via email to