Javascript and Rails Interaction
Javascript and Rails Interaction
我是一个相当新的web开发人员,在思考Rails应用程序的所有部分如何交互时遇到了一些问题。我使用的是rails 3.2
基本上,我希望做的是从远程网站检索包含一些唯一格式数据的响应。然后需要解析这些数据来提取重要的部分,然后这些部分需要用于在我的页面上生成部分。
在我使用的控制器中:
require 'net/http'
@result = Net::HTTP.get(URI.parse("http://remote.website.toget.data"));
然后在不生成部分的情况下初始呈现页面。之后,我使用脚本标记将@result解析为数组,其中包含我需要的数据:
var myData='<%= @result %>';
var myDataCleaned = myData.replace(/%20/g, " ");
while(gameTeams = regexGameTeams.exec(myDataCleaned)){
myTeams[count] = new Array();
myTeams[count][0] = gameTeams[1];
myTeams[count][1] = gameTeams[2];
count++;
}
现在我很困惑如何使用这些数据来生成我的部分。研究表明,将其作为local传递给<%=render"partial"%>调用是不可能的,那么我该如何进行此操作呢?我的猜测是,我做这件事的方式不对,需要在呈现页面之前以某种方式进行解析,然后通过控制器传递结果,但我似乎无法解决。如果有人能给我指明正确的方向,我将不胜感激!!
如果你是对的,你应该在ruby中解析数据(在进行远程调用的控制器中(,并根据提取的数据构建你的部分
数据的格式是什么?
如果是json
,您可以只使用parsed_data = JSON.parse(data)
但是,即使是不同的格式,ruby也使解析相对容易。
如果你的目标是在分部中为Javascript提供对Rails/Ruby变量的访问,那么在分部中你会让它输出JS代码,比如:
some_js_var = <%= some_local_ruby_var_that_is_in_scope %>
或
some_js_var = <%= @some_instance_ruby_var_that_is_in_scope %>
在不向服务器发出请求的情况下,您无法将Javascript变量传递到Rails部分,因此您需要在服务器上进行响应解析等,或者如果由于某种原因必须使用Javascript进行解析,那么您可以在Rails端设置一些JSON服务来处理来自JS端的JSON请求,但这有点傻。
- 如何从rails中的代码中删除新行( )
- Rails File_field最大堆栈大小
- angularjs+rails应用程序中未显示模板
- Rails/JSON:如何将JSON用于jquery UI自动完成表单
- Rails 3.2 js.erb文件转义js
- Rails-JQueryUIAutcomplete和AJAX不工作,可以't连接到数据库
- Jquery:代码在rails中的页面加载时未执行
- Rails操作只调用一次,但我在ajax中每秒钟都调用一次
- Rails/Javascript链接到用于切换多个元素的函数
- 在Rails中更新Div,而不更改更新请求后的视图
- Jquery append oly获取循环Rails中的最后一个elemen
- 通过rails中的Ajax在控制器B的每个视图中渲染控制器a的视图
- 使用主干网和rails的静态页面路由
- 将JavaScript变量保存到Rails模型
- Rails:如何向用户预加载消息
- Ajax and Json with Rails
- Ajax调用ERror Cross Origin REquest:在rails中自动完成大学列表
- Rails:如何获取当前用户'使用Heroku时的时区
- Rails将JavaScript对象存储到Model的有效方式
- Javascript and Rails Interaction