SCALA Lift - доступ к значениям формы AJAX - PullRequest
1 голос
/ 26 октября 2011

У меня есть следующая форма:

<form class="lift:form.ajax">
<div class="lift:StreamInput">
    <input type="hidden" name="path" value="test" />
    <input type="hidden" name="user" value="james" />
    <input type="hidden" name="level" value="_1" />
    <input type="hidden" name="room" value="demo" />
    <input type="hidden" name="hidden" value="true" />
</div>
<input type="submit" value="" />
</form>

Что идет к:

object StreamInput {

    def render = {

        var path = ""
        var user = ""
        var level = ""
        var room = ""

        def process(): JsCmd = {

            val message = comet.StreamItem(user, path, level, room)
            StreamServer ! message

        }

        "name=path" #> SHtml.onSubmit(path = _) &
        "name=user" #> SHtml.onSubmit(user = _) &
        "name=level" #> SHtml.onSubmit(level = _) &
        "name=room" #> SHtml.onSubmit(room = _) &
        "name=hidden" #>  SHtml.hidden(process)

    }

}

Однако, когда я отправляю форму, значения, переданные методу процесса, пусты. Чего мне не хватает, что может привести к их потере?

Спасибо за любую помощь заранее:)

1 Ответ

1 голос
/ 26 октября 2011

Я не могу проверить это прямо сейчас, но, возможно, SHtml.onSubmit не работает в контексте Ajax. Если вы посмотрите на документацию, SHtml.onSubmit используется только в не-Ajax-примере. Примеры Ajax используют SHtml.text для привязки обратного вызова к полям ввода текста.

...