2013-08-13 3 views
-1

В java-скрипте я могу определить переменную.В Rails, как мы можем передавать параметры в скрипте?

var topping = data.getValue(selectedItem.row, 0); 

И потом, я хочу использовать долива значение, как это:

console.log(<%= @ecs.where(status:topping).count %>); 

Очевидно, что он не может работать, потому что он не найдет, где это начинка. Так что мой вопрос в том, как мы должны использовать параметры сценария в <% =%>.

ответ

2

Вы, вероятно, путаете между сценарием на стороне сервера и сценарием на стороне клиента. <% =%> - это сценарий на стороне сервера. javascript - это клиентский скрипт. При рендеринге страницы Ruby on Rails сначала запускает скрипт на стороне сервера, а затем отправляет ответ вашему браузеру. ВАШ BROWSER выполняет скрипт на стороне клиента позже, поэтому вы не можете использовать переменные на стороне клиента в <% =%>.

Если вы хотите получить результат динамически на основе переменных на стороне клиента. Используйте AJAX. Отправьте параметр на сервер и получите ответ с помощью javascript. Это большая картина. См. Ниже учебники (не уверен, что это сработает) или начните с книги с рельсами (Agile Web Development with Rails) или google.

rails ajax tutorials

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