[英]Rails Hash in javascript, access values
我有以下javascript代码:
<input type="hidden" name="query_form_select_ops" id="query_form_select_ops" value='<%= schema%>' />
<script>
function select_pk2(cell){
var val = $('#query_form_opt_'+cell+'_1').val();
var opts = $('#query_form_select_ops').val();
}
</script>
例:
schema
是典型的ruby哈希:
{
"car"=>{"col"=>"blue", "engine"=>"HHd4M"},
"train"=>{"col"=>"black", "engine"=>"8495f"}
}
变量val
的值为“ train”,并opts
整个ruby哈希值
要在ruby中访问train
的col
和engine
:schema [“ train”]。 如何在javascript中做同样的事情?
我努力了:
var select = opts[val]
但是它告诉我var in undefined。 给定哈希值和键之一,如何在javascript中访问ruby哈希值?
将schema
哈希值转储为json,然后使用javascript解析回来。 像这样:
<input type="hidden" name="query_form_select_ops" id="query_form_select_ops" value='<%= schema.to_json %>' />
和脚本:
function select_pk2(cell){
var val = $('#query_form_opt_'+cell+'_1').val();
var opts = JSON.parse($('#query_form_select_ops').val());
}
这样,您应该能够以所需的方式访问值。
您的示例中哈希的每个单独值也都是哈希,因此您可以使用适当的键来访问它们。 像这样:
opts['car']['col'];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.