将变量从 Ruby 传递给 JavaScript
passing variables form ruby to javascript
我正在尝试从搜索提示中选择用户的值并将其传递给javascript。在我的搜索控制器中,它存储在@result中。然后我找到了我需要的东西(参数[:query_id]
希望通过将未签名用户的选择添加到提示中来使未签名用户的提示更花哨一些。尝试了一个简单的方法——
var selected = getElementById('#query').value;
但是收到此错误消息: 引用错误:找不到变量:getElementById
尝试从 ruby 数组中获取此变量:
var selected= <%= @result.to_json %>;
但它返回空
添加 searh 控制器的代码,如建议:
定义索引 respond_to do |format| format.html {render :text => "html"}
format.js do
@search = SearchItem.search{ keywords params["query"] }
@result = []
@search.each_hit_with_result do |hit, item|
@result << {:name => hit.stored(:name), :id => item.id}
end
render :json => @result.to_json
end
end
然后在搜索 html 中我有
#search
= form_tag find_from_query_entries_path, :remote => true, :id => "search_form" do
= text_field_tag :query, nil
= hidden_field_tag :query_id
getElementById
不是在全局对象中定义的。它是document
的属性。
尝试:
var selected = document.getElementById('#query').value;
Rails附带了jQuery,为什么不使用它呢?
我想这就是你想要的。
$('query').val()
但是您应该跳转到浏览器中呈现的 html 以检查是否要选择作为名称查询的节点(我认为这是 rails 所做的或您认为的 id 查询
相关文章:
- 为什么不't我的ruby代码与javascript文件一起插入
- Ruby on Rails javascript getting truncated
- 带有ruby代码和javascript的链接
- Rails:试图在javascript(Google Charts API)中嵌入一个adv-ruby(each+迭代器
- ruby到javascript,可能吗?怎样
- Javascript是否可以在VPS/远程服务器上执行Ruby脚本
- 从Haml调用外部javascript中的ruby数组
- 使用情感API视频(Javascript或Ruby)
- 让Javascript下拉菜单在rails上使用ruby
- Javascript Ruby's类似地图的方法
- 页面对象设计:有没有相当于Ruby gem的Javascript;site_prism”;
- 相当于Ruby中的pull和uniq的Javascript
- 将javascript变量分配给ruby变量
- 用JavaScript编写嵌入式ruby
- 如何使用 Ruby 在 Javascript (js.erb) 中设置 url
- geolocation with javascript and ruby on rails
- Ruby on Rails 4:在 Rails Web 应用程序中添加 Javascript 文件时遇到问题
- Window.onload 未被调用 [Ruby on Rails] [Vanilla Javascript]
- jQuery不能在javascript ruby标签中工作
- 无法在Javascript Ruby on Rails视图中运行LOOPS