我整天在Google上搜索,仍然找不到任何答案。所以基本上在我的JavaScript函数中,我想发送GET请求到我的Rails控制器,然后Rails控制器将返回一个JSON对象。你有什么想法吗?谢谢。
我整天在Google上搜索,仍然找不到任何答案。所以基本上在我的JavaScript函数中,我想发送GET请求到我的Rails控制器,然后Rails控制器将返回一个JSON对象。你有什么想法吗?谢谢。
使用jQuery,我会这样做:
选择你想要的选择器和事件,例如在点击某个元素时:
$(function() {
$('#foo').click( function(){
var params = '{"field1": "value1", "field2: "value2"}';
$.get('/controller/bar', params, function(data){
alert(data);
});
});
});
那么,在你的Rails控制器中:
def bar
/// hack hack hack
render :json => {"response" => "OK"}
end
在你的routes.rb文件中:
match 'controller/bar' => 'controller#bar'
您可以使用jQuery ajax从javascript发出get
或post
请求。
jQuery.ajax({
url: "url to controller method", // it should be mapped in routes.rb in rails
type: "GET",
data: {field1 :value1, field2:value2}, // if you want to send some data.
dataType: "json"
success: function(data){
// data will be the response object(json)
}
});
respond_to do |format|
format.js { render :json => @json_data }
end