Динамически изменяемые переменные Ruby-on-Rails в представлении - PullRequest
0 голосов
/ 03 августа 2011

У меня есть следующее select_tag.

<%= select_tag :days, options_for_select(["Monday", "Tuesday"]) %>  

Где-то в представлении я определил следующую переменную.

<% @day_of_week = "Monday" %>

И показал это:

<%= @day_of_week %>

Я хотел бы динамически изменить @day_of week после выбора значения из select_tag.

Ответы [ 2 ]

1 голос
/ 03 августа 2011

Вы можете использовать jquery для этого.

Добавьте это в начало вашего html-файла (если у вас еще нет jquery):

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>

Оберните ваш текст так, чтобы получитьit id:

<div id="text_to_be_changed"><%= @day_of_week %></div>

Дайте конкретный идентификатор вашей вкладке SELECT (если #days по какой-то причине не работает).

<%= select_tag :days, options_for_select(["Monday", "Tuesday"]), :id => "select_days" %>  

Затем добавьте этот ненавязчивый JavaScript в конецс вашей точки зрения.Любое изменение в выбранных # днях вызовет модификацию html div # text_to_be_changed.

<script>
$(document).ready(function(){
    $('#select_days').change(function() {
        $('#text_to_be_changed').html($(this).val());
    });
});
</script>
1 голос
/ 03 августа 2011

вы хотите отобразить день, когда пользователь выбирает из тега выбора? .. использовать простой ненавязчивый JavaScript.its

$('#days').change(function() {
  $('#current_day').html(this.val());
});

где «days» - это идентификатор выбранного тега, а «current_day» - это идентификаторdiv, где вы хотите показать выбранный день

...