2013-11-27 3 views
0

У меня есть хэш «c_failures_all» с некоторыми значениями в нем, и я беру значение выбранного элемента из выпадающего списка в переменной «selVal» с помощью jquery. Это «selVal» будет действовать как ключ в моем хеше. Проблема заключается в том selVal является переменной JQuery, и если сделатьКак использовать переменную jquery в хэшелях rails в качестве ключа

c_failures_all[selVal] 

выдает ошибку "неопределенные локальная переменная или метод` selVal»для # < #: 0x15484300>"

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> 

ответ

1

в JS, вы можете создайте массив для доступа к нему позже в рубине:

<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> 

Я не проверял его, скажите, правильно ли он работает.

+0

Louis его не работает, приятель есть какой-либо способ, я мог бы отслеживать, какие значения arrayFailures [selVal] возвращается? – Prem

+0

Работаю ... Спасибо брату ..... Я делал глупую ошибку – Prem

+0

Добро пожаловать! –

Смежные вопросы