Grails прикован цепью вниз - PullRequest
1 голос
/ 05 августа 2011

Я пытаюсь реализовать цепочки выпадающих списков, используя учебник здесь . Мои занятия не такие прямые, как в уроке.

Я хочу связать выпадающие списки для представления create.gsp в классе Load. Каждая загрузка принадлежит учетной записи из класса Account, и каждая учетная запись принадлежит пользователю из класса User, и у каждого пользователя есть несколько пунктов назначения груза из класса Address.

Моя цель - иметь дату обновления поля назначения груза в зависимости от выбранной учетной записи.

У меня проблемы с пониманием функции AJAX в руководстве (шаг 3) и с тем, как она связана с функцией Grails (шаг 4).

Вот код AJAX:

     function respondToSelect(event)
 {
       new Ajax.Updater("memberSelect",
          "/chainedSelect/family/updateSelect",
          {method:'get', parameters: {selectedValue : $F("familySelect")} }
         );
 }

Вот метод Грааля:

    def updateSelect = {

     def familySelected = Family.find("from Family as family where family.surname=:surname", [surname:params.selectedValue])

render (template:"selectMember", model : ['familySelected' : familySelected])

}

Если бы кто-то мог просто объяснить, что делает третий параметр функции AJAX, я думаю, что смогу разобраться с частью Grails.

{method:'get', parameters: {selectedValue : $F("account")}}

1 Ответ

4 голосов
/ 05 августа 2011

Если бы кто-то мог просто объяснить, что делает третий параметр функции AJAX

Третий аргумент - это объект параметров, которые передаются в Updater и сообщают ему, как сделатьHTTP-запрос к серверу.

Выполните запрос HTTP GET-запроса:

method:'get'

Передайте следующие именованные параметры запроса:

{selectedValue: $F("account")}

$F isярлык прототипа для получения значения элемента .В этом случае он получает выбранное значение элемента DOM с идентификатором account.

В конечном итоге это приводит к следующему запросу:

GET /chainedSelect/family/updateSelect?selectedValue=someValue

Где "someValue" - этовыбранный в данный момент элемент в списке выбора «account».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...