2011-01-11 52 views
2

我想要分配的值和DOM元素的innerHTML源到当地红宝石变量的值和innerHTML之中。 但是,在我的方法中,似乎我无法使用RJS来完成此功能。 我不知道哪个方法可以实现它,一句话就是:把一个js变量赋值给一个ruby局部变量,怎么做呢?RJS:如何获得DOM元素

有限情况是: page.assign仅可以分配一个红宝石变量值一个js变量。 page []只能得到一个DOM元素对象,不能返回它的值或者innerHTML

回答

2

你是说你想通过RJS获取页面上的某个元素的innerHTML,将它赋值给一个Ruby变量,然后使用它在Ruby代码中的RJS文件中?例如:

 
# my_page.html 
<div id="foo">This is the content</div> 

 
# my_page.js.rjs 
@some_var = page['foo'] # expecting to get "This is the content" 
do_something_amazing(@some_var) 

这是不可能的RJS。原因是您的RJS代码首先在服务器上执行,然后将其呈现的结果发送到浏览器。

如果你需要一个DOM元素,在服务器端作用于的内容,则需要通过表单后这些内容发送给服务器。

+0

是的,你的理解是对的。我明白了你的观点。那谢谢啦 ! :) – squirrelRao 2011-02-15 12:44:45