Лучший способ обновить несколько div с различными значениями из ответа? - PullRequest
0 голосов
/ 13 декабря 2011

Документация по remoteLink позволяет вам легко обновлять один div с ответом от сервера, но я бы хотел вернуть несколько значений (через JSON) и обновить более одного места на странице. Как бы я это сделал? Вот надуманный пример, обратите внимание, что я использую плагин JQuery, поэтому я считаю ответ доступным в «данных», а не в «е», как говорится в документации Grails, но мои навыки на стороне клиента довольно слабые и пример вызова updateTwo может быть неправильным, поэтому не стесняйтесь исправлять меня.

GSP:

<g:remoteLink controller="ajaxexample" action="test" update="assumeIcantUseThis" onSuccess="updateTwo(data, 'DivId1', 'DivId2')"></g:remoteLink>

<g:javascript>
 function updateTwo(?) {
  ??
 }
</g:javascript>

Контроллер

class AjaxexampleController {
  def test = {
        def example = ["v1":1,"v2":2];
        render example as JSON;
    }

} 

1 Ответ

1 голос
/ 13 декабря 2011

Я бы не стал использовать теги Grails remote / AJAX. Я нашел их пригодными только в простых сценариях.

Лучший способ понять, о чем я говорю, это посмотреть на визуализированный HTML вашего представления. Используйте инструмент, такой как Firebug (Firefox) или консоль разработчика (IE9, Chrome), чтобы посмотреть на вывод удаленных тегов Grails. Вы увидите, что все они оказываются ссылками / формами с атрибутами onClick или onSubmit.

Оттуда вы можете работать с сгенерированным JavaScript, чтобы настроить функцию в соответствии с вашими потребностями.

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