如何在触发:onchange事件时调用ruby方法(ruby on rails 4)
How to call a ruby method when :onchange event is triggered (ruby on rails 4)?
我对ruby on rails很陌生。。。在我的_form.html.erb
上,我有一个collection_select
字段,它是由一个名为Product的模型填充的。产品的表列为id, name, and price
。一旦我从集合中选择了一个项目(产品),我想用所选产品的价格填充一个文本字段。
到目前为止,我有以下代码IOT在选择项目时触发事件:
<%= collection_select( :warehouse, :product_id, Product.all, :id, :name, {}, {:onchange => "alert('Hello World');"} )%>
如何调用一个ruby方法,让我用所选产品的相应价格填充text_field?
对于这种方法,我想的是。。。
def set_price
@price = Product.find(params[:id]).price
end
erb片段
<%= collection_select( :warehouse, :product_id, Product.all, :id, :name, {}, {:onchange => "alert('Hello World');"} )%>
生成类似以下的html片段
<select name="warehouse[product_id]" onchange="alert('Hello World');">
<option value="1">Product 1</option>
<option value="2">Product 2</option>
...
</select>
所以onchange
的内容只是一段javascript,它在浏览器上运行。没有办法让onchange
直接运行ruby代码。您所能做的就是在onchange
中发送一个AJAX请求,并让Rails应用程序响应该请求。
相关文章:
- 如何防止jQueryonclick事件中的Ruby方法在页面刷新时执行
- Javascript Ruby's类似地图的方法
- 如何在我编写的JavaScript中重构Ruby的#{}方法
- Ruby on rails-更新ajax的PUT方法
- 有没有一种方法可以让Ruby在提供.js文件之前对其进行编辑
- 在Ruby方法中创建缓存
- 如何在触发:onchange事件时调用ruby方法(ruby on rails 4)
- 从 JavaScript 调用 ruby 方法或从 RoR 中的视图中传递参数
- 在 NodeJS 中,有没有一种类似于 dependant 的方法:Ruby 中的 :d estroy 用于关联记录
- 在erb文件中调用Ruby方法时传递参数
- 在Ruby方法中捕获变量
- 如何使用调用、应用和绑定在Ruby中的对象上强制使用类似于JavaScript的方法
- 嵌入式Ruby:Array.each“;无方法“;错误
- 将ruby方法移植到javascript
- 我如何在ruby中使用cgi方法引用jquery库
- JavaScript有像Ruby中的ARGV那样通过终端行传递参数的方法吗?
- 是否有一种方法将javascript变量传递到html.erb中的ruby方法
- 调用在javascript中嵌入不同参数的ruby方法
- 调用index.html.erb中的ruby方法来加载javascript
- 如何从JavaScript调用服务器上的Ruby方法