简体   繁体   English

如何在Rails哈希中使用jquery变量作为键

[英]how to use a jquery variable in rails hash as a key

I have a hash "c_failures_all" with some values in it and i am capturing value of selected item from a dropdown list in variable "selVal" using jquery. 我有一个哈希值“ c_failures_all”,其中包含一些值,并且正在使用jquery从变量“ selVal”的下拉列表中捕获所选项目的值。 That "selVal" will act as a key in my hash. 该“ selVal”将充当我的哈希中的键。 The problem is selVal is a jquery variable and if do 问题是selVal是一个jquery变量,如果这样做

c_failures_all[selVal]

throws an error "undefined local variable or method `selVal' for #<#:0x15484300>" 引发错误“#<#:0x15484300>的未定义局部变量或方法'selVal'”

    c_failures_all = {"Amount"=>[5, 4, 8, 7, 6], "Lookup"=>[10, 85, 56, 23, 10], "Advantage"=>[9, 5, 40, 12, 3]}
<script>
         $("#error_error_id").on('change', function(){
        //alert('f')
        var selVal = $("#error_error_id").val();
        if(selVal == "All" || selVal == '')
        {
            options.series = [{name: 'All', data: <%= c_failures_arr %>}]
        }
        else
        {
            options.series = [{name: 'D', data: <%= c_failures_all[selVal] %>}]
        }
        var chart = new Highcharts.Chart(options);
    });
  </script>

in JS, you can create an array to access it later in ruby: 在JS中,您可以创建一个数组以稍后在ruby中访问它:

<script>
   var arrayFailures  = <%= c_failures_arr.to_json %>;
   $("#list").on('change', function(){
            var selVal = $("#list").val();
            if(selVal == "All" || selVal == '')
            {
                options.series = [{name: 'All', data: arrayFailures[selVal] }]
            }
            else
            {
                options.series = [{name: 'other', data: [4,7,9,6,2]}]
            }
            var chart = new Highcharts.Chart(options);
        });
<script>

I've not tested it, tell me if it works properly. 我尚未对其进行测试,请告诉我它是否可以正常工作。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM