2013-06-26 2 views
0

Я использую Grails 2.2.1 и плагин Twitter Bootstrap.Grails Twitter Bootstrap Модальное загрузочное содержимое на стороне сервера

Если я правильно понимаю, точка GSP - отображать определенные вещи на стороне сервера через теги grails/taglib.

Как бы вызвать действие MyAction с контроллером myController быть вынесено внутри только модальным, используя серверный подход?

Если у вас нет серверного способа сделать это, какая бы лучшая альтернатива?

+0

Я думаю, что есть ошибка моих плагинов или что-то, потому что я пытаюсь использовать этот простой пример: http://jsfiddle.net/mmfansler/cp67J/ И это даже не работает имеет 0 проблем на jsfiddle. –

+0

размещение вашего кода было бы полезно, так как я не могу представить вашу проблему. – jjczopek

+0

У меня не было проблем с использованием функции .load jquery. Но после установки плагина js/prototype для Grails функция .load больше не работает для Twitter Bootstrap Modals. Я полностью удалил прототип плагина, затем я удалил и переустановил Bootstrap и jquery. Но он все еще не работает. –

ответ

1

Если вы хотите, чтобы ваш модальный отображал данные с сервера, не обновляя текущую страницу, вам понадобится некоторый тип «ajax» для извлечения данных и заполнения модального файла.

Быстрый пример (я предполагаю, у вас есть JQuery, и начальная загрузка CSS + JS):

//button to launch your modal 
<a href="#myModal" role="button" class="btn" data-toggle="modal">Launch demo modal</a> 

//your modal 
<div id="myModal" class="modal hide fade" ... 
... 
<div id="modal-body">.. 
</div> 

Один из способов загрузки данных в модальном завязывают АЯКС вызов модального «шоу» событие. Это очень простой пример, но всякий раз, когда модальных показывает, вызов myController/MyAction/someid для загрузки данных в DIV модальный тела

$(document).ready(function() { 
    $('#myModal').on('show', function() { 
    $.ajax({ 
     type: "GET", 
     url: "${createLink(controller: 'myController', action: 'myAction', id: 'someid')}" 
    }).done(function(data) { 
     $('#modal-body').html(data); 
    }); 

    });//end on() 
});//end ready() 

Некоторые вещи, чтобы рассмотреть следующие вопросы:

  • вы будете вероятно, хочет сделать некоторый тип переговоров контента передать данные обратно JSon против сырого HTML
  • менее локализованный метод передачи URL: Аякс вызова

Надеется, что будет вам начать остроумие ч некоторые идеи