В моей форме я пытаюсь обновить поле exchange_rate
, когда пользователь меняет поле выбора currency
.Как обновить поле через Ajax в Ruby on Rails?
application.js:
$("#invoice_currency").change(function() {
$.ajax({
url: '/invoices/get_exchange_rate',
dataType: 'script'
})
});
invoices_controller.rb:
def get_exchange_rate
from = current_user.base_currency
to = params[:currency]
@exchange_rate = GoogleCurrency.get_exchange_rate(from, to)
end
get_exchange_rate.js.erb:
$('#invoice_exchange_rate').val('<%= @exchange_rate %>');
google_currency.rb:
module GoogleCurrency
def self.get_exchange_rate(from, to)
....
end
end
Это не работает еще и потому, по какой-то причине, params[:currency]
не могут быть оценены динамически через Ajax.
Может ли кто-нибудь сказать мне, как это делается?
Спасибо за любую помощь.
Да, это работает, спасибо много! У меня вроде бы была догадка, но я не знал точного синтаксиса. – Tintin81