2012-05-03 106 views
4

如何使用jQuery在Grails頁面中發出Ajax請求?Grails中的jQuery Ajax請求

如何在Grails控制器上設置URL訪問方法?讓我們說控制器:'機場',行動:'getJson'和輸入到行動是'iata'。

我可以將靜態網址設置爲http://localhost:8080/trip/airport/getJson,但無法弄清楚如何特別爲iata傳遞輸入。

我對Grails相當陌生,並且遵循IBM的'掌握Grails'教程系列。建議我在Grails中使用jQuery的一些很好的教程。

+0

你是什麼意思與「輸入到行動」? ID?一個參數值?生後的身體?原始查詢? –

+0

@IgorArtamonov它是控制器方法的參數。 –

回答

11

使用jQuery中的$就法

$.ajax({ 
    url:"${g.createLink(controller:'airport',action:'getJson')}", 
    dataType: 'json', 
    data: { 
     iata: '.............', 
    }, 
    success: function(data) { 
     alert(data) 
    }, 
    error: function(request, status, error) { 
     alert(error) 
    }, 
    complete: function() { 
    } 
}); 
2

它是:

$.ajax({ 
    url: '/trip/airport/getJson', 
    data: {paramName: 'iata'} 
}); 

使用你的參數名稱,你期待在行動中,paramName這一翻譯,我已經使用。

+0

使用鏈接/旅程/機場...而不是g.createLink是最佳方式嗎? – havenchyk

+0

它是'.js'文件的唯一方式,對於gsp'g.createLink'是首選 –

+0

但gsp中的js不在瀏覽器的緩存中。什麼是首選? :) – havenchyk