簡體   English   中英

JavaScript中的Rails哈希,訪問值

[英]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中訪問traincolengine :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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM