2012-05-03 105 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