将变量从Javascript传递到Ruby on Rails
在rails中你可以这样做:
var name = ; alert(name); //prints the name of the user
你可以反过来这样做
var name = "John"; = name;
显然这不起作用,但是出于示例的目的
关键是,你能否将javascript变量的值传递给rails中的ruby变量
不,你不能直接从javascript传递变量到rails:
- Ruby on Rails的代码在服务器端执行,以生成页面(使用HTML,CSS和Javascript)。
- Javascript的代码由客户端在浏览器上执行。
沟通客户端 – >服务器的唯一方法是使用请求。 您可以使用AJAX (异步Javascript和XML)从客户端向服务器发送请求,而无需重新加载页面。
您必须了解有关服务器/客户端代码的一些概念。 “从网站显示页面”的过程:
- ( 客户端 )用户向服务器发送HTTP请求以发送页面,发送页面位置,例如:
http://myapp.com/users
:http://myapp.com/users
- ( 服务器端)服务器获取请求,在定义的路由后找到正确的控制器/操作
- ( 服务器端)服务器生成HTML / CSS / Javascript中的页面以发送回用户。 它通过视图和部分生成HTML,执行这些页面的ruby代码。
- ( 服务器端)一旦页面呈现(完全生成HTML / CSS / Javascript),服务器就会发送HTTP响应
- ( 客户端 )客户端的浏览器接收服务器的响应,由HTML / CSS / javascript(大多数)组成。 浏览器呈现HTML / CSS,并执行javascript。