выполнение вызова функции / нажатия кнопки JavaScript на другой странице - PullRequest
2 голосов
/ 22 ноября 2011

Мне нужно вызвать функцию javascript (содержит вызов jquery.ajax ()), например showfilterresult ().Этот вызов вызывается на странице monitor.gsp по нажатию кнопки типа «фильтр».

Я звоню с другой страницы. Мне нужно загрузить страницу montoring.gsp, а такжеПусть этот вызов showfilterresult () будет выполнен на загруженной странице.(поэтому я хочу сделать 2 вызова, один на страницу, а другой на функцию на странице)

Сейчас я делаю это:

 <javascript>
jQuery.ajax({
     var myurl = /myapp/users/monitoring
        url: myurl,
        dataType: 'html',
        timeout: 10000,
        beforeSend: function() {
             jQuery('#mydiv').html(../showspinner.gif)
          },
        success: function(data) {
        window.location = myurl;
        }
      });

</javascript>

Функция showfilterresult()следующим образом:

function showFilterResult(){
    var frm=jQuery('#fromDate').val();
    var to=jQuery('#toDate').val();
    if($('#fromDate').val().length>0  && $('#toDate').val().length>0){
            jQuery.ajax({
                type:'POST',
                data:{
                    'timeWindow':$("#timeWindow").val(),
                    'p1':p1,
                    'p3':$('#p3 option:selected').text(),
                    'fromDate':$("#fromDate").val(),
                    'toDate':$("#toDate").val(),
                },
                url: '/myapp/users/filterResult',
                beforeSend: function() {
                    jQuery("#filteredResult").html('/showspinner.gif')
                },
                success:function(data,textStatus){
                    jQuery("#filteredResult").html(data)
                }
            });

Мне также нужно знать, как передать параметры url в вызов showfilterresult () со своей страницы, по умолчанию функция берет значения из текстовых полей на странице monitor.gsp.

Обновление: это аналогично: у меня есть личная веб-страница, и мне нужно вызвать другую веб-страницу, например google.com, а также передать некоторые параметры и вызвать запрос "search" на google.com спараметров, поэтому после того, как я нажму ссылку / кнопку своей веб-страницы, она не только переадресует на google.com, но и вызовет событие поиска с моими переданными параметрами, и я сразу увижу страницу результатов поиска Google.

С уважением, Приянк

1 Ответ

0 голосов
/ 22 ноября 2011

Не использовать встроенную функцию jQuery.ajax. В Grails у вас есть плагин jquery.

  1. Установите этот плагин, используя grails install-plugin jquery.

  2. Импортируйте файлы jQuery в html, используя <g:javascript library="jquery" />

  3. Замените вашу первую функцию AJAX на:

    <g:remoteFunction
         controller="user"
         action="monitoring"
         before="$('#mydiv').html('../showspinner.gif')"
         onComplete="window.location = ${createLink(
             controller: 'user', 
             action: 'monitoring')}" />
    
  4. Замените свою вторую функцию AJAX на:

    <g:remoteFunction
         controller="user"
         action="filterResult"
         params="$('#yourFormId').serialize()"
         before="$('#filteredResult').html('/showspinner.gif')"
         update="filteredResult" />
    

Возможно, вам нужно проверить, правильно ли установлены ваши параметры. В любом случае вы можете указать параметры в первом случае, используя тег params.

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