Я хочу создать форму для бронирования заимствованных предметов. Бронирование состоит из времени получения, времени возврата и предметов, которые резервер хочет одолжить, и их сумм. Например, я мог бы зарезервировать три тарелки, три ножа и три вилки для остальной части недели.
В форме я хочу выполнить проверку AJAX, которая проверяет, достаточно ли доступно элементов. Рядом с каждым элементом у меня есть текстовое поле, с помощью которого резервист вводит сумму элемента. После ввода я хочу выполнить вызов onchange, который проверяет, доступно ли количество товаров на указанные даты. Таким образом, мне нужно передать удаленной функции, вызываемой в onchange, следующие параметры: идентификатор элемента, количество элемента (значение текущего текстового поля) и время получения и возврата, которые оба указаны в полях datetime_select выше. Это мой код:
<% with = "'amount='+value+'&item=#{item.id.to_s}&pick_up_time=#{@reservation.pick_up_time.to_s}&return_time=#{@reservation.return_time.to_s}'" %>
<%= text_field_tag "reservation[#{prefix}reserved_items][#{item.id}]", get_amount_value(item, @reservation), :size => 3, :onchange => "#{remote_function(:url => { :controller => :items, :action => :availability }, :with => with, :update => availability_url) }" %>
Очевидно, что это не работает, поскольку @servation.return_time и @servations.pick_up_time еще не установлены, поскольку форма еще не отправлена. Мой вопрос: как мне получить эти значения? Я считаю, что это должно быть сделано с помощью вызова javascript, но мне не удалось вставить вызов javascript в переменную «with», или, по крайней мере, я не смог заставить его работать. Кто-нибудь знает, что мне делать?