2014-03-31 62 views
0

示例非常簡單。如何將表單參數從formRemote傳遞給GSP中的remoteFunction

選擇兩個搜索條件並返回一個帶分頁的表,整個頁面不會刷新。

所以我用grails的formRemote來提交表單,並且控件返回模板的性別,它工作的很好。然而,我想使用Jquery的分頁,但我無法通過formRemote中的onSuccess方法將formRemote參數傳遞給remoteFunction。

這是代碼:

 <div class="formSep col-md-12"> 

      <g:formRemote update="searchResult" class="form-inline" role="form" name="form" 
          url="[controller: 'autoRateRecord', action: 'search']" onSuccess="initPagination(data)"> 

       <div class="form-group col-lg-2"> 
        <g:select class="form-control" name="notified" from="${['done', 'undone']}" 
           noSelection="${['null': 'Oops']}"> 
        </g:select> 
       </div> 

       <div class="form-group col-lg-2 pull-right"> 
        <button type="submit" class="btn btn-primary btn-lg"> 
         <span class="glyphicon glyphicon-search"></span> search 
        </button> 
       </div> 

      </g:formRemote> 

     </div> 

     <div id="searchResult"> 
      <g:render template="searchList"/> 
     </div> 

    <script type='text/javascript'> 

     function initPagination(data) { 
      console.log("------> " + data) 
      $("#Pagination").pagination(10, { 
       callback: getRecordList(1), 
       prev_text: "prev", 
       next_text: "next", 
       items_per_page: 15, 
       num_edge_entries: 1 
      }); 
     } 

     **!!!!!!! need formRemote data !!!!!!!** 
     function getRecordList(page_index) { 
      <g:remoteFunction controller="autoRateRecord" action="search" update="searchResult" params="'page='+page_index"/> 
     } 

     // On load, style typical form elements 
     $(function() { 
     }); 
    </script> 

控制器代碼:

def search = { 
    log.info(ToStringBuilder.reflectionToString(params)) 
    // logic ..... 
    render(template: "searchList", model: [ 
      autoRateRecords: result, 
      total   : result.totalCount 
    ]) 
} 

回答

0

我會分頁腳本更改爲類似

$("#pageHiddenFieldId").val(pageNo); 
$("#myForm").submit(); 
相關問題