【发布时间】:2014-11-25 21:54:13
【问题描述】:
我的 ruby/rails 应用程序有点问题。
我想从我选择的项目中获取 ID 并与他们进行查询。
在我的_form中我有:
<%= f.label "Stock", for: "text" %>
<%= f.select :stock_id, @stocks_list, {}, onchange: 'ShowUser(this.value)' %>
我的 JavaScript 代码是:
function ShowUser(str){
alert("You select item with value: " + str);
}
我需要在我的控制器上捕获 'str' 值并动态显示所选 sotck 的信息(通过查询)。
更新:
当我选择一个项目时,只在弹出窗口中显示消息,没有其他内容。我的完整功能是
function ShowUser(str)
{
alert("You select item with value: " + str);
JQuery.ajax( {
data: {valor: str},
type: 'post',
url: "/orders/create",
});
}
控制台日志是
Started GET "/orders/new" for 127.0.0.1 at 2014-11-25 16:54:39 -0600
Processing by OrdersController#new as HTML
Staff Load (0.2ms) SELECT `staffs`.* FROM `staffs`
Provider Load (0.2ms) SELECT `providers`.* FROM `providers`
Stock Load (0.2ms) SELECT `stocks`.* FROM `stocks`
Rendered public/templates/menu.html.erb (1.0ms)
Rendered orders/_form.html.erb (6.8ms)
Rendered orders/new.html.erb within layouts/application (39.7ms)
Completed 200 OK in 273ms (Views: 268.3ms | ActiveRecord: 0.7ms)
当我选择一个项目时,控制台不会改变
【问题讨论】:
-
你必须向服务器发出请求。你是怎么提出这样的要求的?
-
我从这个link尝试了这个
JQuery.ajax( { data: {valor: str}, type: 'post', url: "/orders/create", }); -
当你尝试这样做时,发生了什么?
-
Rails 是服务器端。 Javascript是客户端。你需要发送一个 Ajax 请求来实现你之后的结果
-
@AlexWayne 什么都不做。
标签: javascript ruby-on-rails ruby