将变量从Javascript传递到Ruby on Rails
Passing variable from Javascript to Ruby on Rails
在rails中你可以这样做:
<% name = @user.name %>
<script>
var name = <%= name%>;
alert(name);
//prints the name of the user
</script>
你可以反过来做,像这样
<% name = @user.name %>
<script>
var name = "John";
<% name %> = name;
</script>
<% @user.name = name %>
<%= name %>
<!-- prints the name of the user, in this case "John" -->
显然这不起作用,但出于示例的目的
关键是,你能把一个javascript变量的值传递给rail中的ruby变量吗?
不,你不能直接将变量从javascript传递到rails:
- Ruby on Rails的代码在服务器端执行,以生成页面(使用HTML,CSS和Javascript(。
- Javascript的代码由浏览器在客户端执行。
将客户端>服务器通信的唯一方法是使用请求。您可以使用 AJAX(异步 Javascript 和 XML(将请求从客户端发送到服务器,而无需重新加载页面。
<小时 />您必须了解有关服务器端与客户端代码的一些概念。"显示来自网站的页面"的过程:
- (客户端(用户向服务器发送页面的HTTP请求,发送页面的位置,例如:
http://myapp.com/users
- (服务器端(服务器收到请求,按照定义的路由找到正确的控制器/操作
- (服务器端(服务器以 HTML/CSS/Javascript 格式生成页面以发送回用户。它通过视图和部分生成HTML,执行这些页面的Ruby代码。
- (服务器端(页面呈现后,服务器发送HTTP响应,并在正文中使用HTML/CSS/Javascript。
- (客户端(客户端的浏览器接收服务器的响应并读取由HTML/CSS/Javascript组成的正文(大部分(。浏览器解析并呈现 HTML/CSS,并执行 javascript。
相关文章:
- Ruby on Rails javascript getting truncated
- 在ruby on rails中使用jquery getJSON获取数据
- Ruby On Rails应用程序与angularJS关于AJAX
- ruby on rails:用于不同页面的选项卡
- Ruby On Rails Ajax 提交提交两次
- Ruby on Rails - 引导旋转木马按钮不起作用
- 按索引迭代数组时,单击提交按钮Ruby on Rails
- 如何将.js从视图移动到单独的资产 - Ruby On Rails
- 如何在Ruby on Rails中集成Arbor.js
- geolocation with javascript and ruby on rails
- Ruby on Rails 4:在 Rails Web 应用程序中添加 Javascript 文件时遇到问题
- Window.onload 未被调用 [Ruby on Rails] [Vanilla Javascript]
- 如何在Ruby on Rails会话过期时重新加载或刷新页面
- 重命名上传的文件Ruby On Rails
- Ruby on Rails - grouped_collection_select error
- 带有jquery.min.map的Ruby on Rails:未能加载资源状态406
- Ruby on rails-更新ajax的PUT方法
- Heroku Ruby on Rails应用程序don't更新公共/资产目录中的未消化资产
- Ruby on rails javascript没有;无法正确加载(HTML5模板)
- 谷歌图表API与Ruby on Rails