1、form加入HTML属性

<%= form_for(@device, :html => {:method=>"post", :id=>"form1", :name=>"form1", :target=>"__hidden_call"}) do |f| %>
<% form_for :person, @person, :url => { :action => "update" } %>

<%= form_tag({:action => "upload_sand_score"}, multipart: true) do |f| %>

2、link_to

<%= link_to "Issues", {:controller => "issue", :action => "index"}, {:onclick => "alert(1)"} %>
<%= link_to "Issues", {:controller => "issue", :action => "index", :param=value}, :onclick => "alert(1)" %> #加参数

3、select

#(1)select:
select(object, method, choices, options = {}, html_options = {})
#在ActionView::Helpers::FormOptionsHelper中定义
#object事一个实体化变数,这里很明显的就是要摆上model物件嘛!
#method则是object的一个属性,也是资料表中的对应项目
#choices就是要被选的选项,可以事阵列或者事哈希(Hash)
#options与html_options则是一些选项
#来这里举个例子吧
<%= select("project", "teacher_id", @teachers.collect{|t| [t.name, t.id]}, { :include_blank => false }) %>
<%= select("project", "student_id", {"CFC" => '1', "EF" => '2'}) %>
#第一个例子中,@teachers在Controller是这样的@teachers = Teacher.find(:all, :select => 'id, name')#(2)select_tag:
select_tag(name, option_tags = nil, options = {})
#在ActionView::Helpers::FormTagHelper中定义如果你很喜欢动手打option的话.. 那用select_tag准没错啦!在select_tag中,name将会是params所接收值所用的键直接看范例
<%= select_tag 'user', "<option>CFC</option>" %>
#这时在Controller中将会用params[:user]来接收传过来的值但是select_tag也可以搭配options_for_select或者options_from_collection_for_select一起使用.. 来看一个范例吧
<%= select_tag('sid[]', options_from_collection_for_select(@students, 'id', 'name'), :multiple => true)%>
#因为加上了:multiple,所以可以接受多值选择,这时在Controller接收到的sid将会是一个阵列,这也是我所卡住的地方..#(3)collection_select:
collection_select(object, method, collection, value_method, text_method, options = {}, html_options = {})
#在ActionView::Helpers::FormOptionsHelper中定义
#如果信息来源是数据库的话,可以使用这个来做下拉式选项。
#这个Object不用我说,就是你的model
#method呢?当然就是栏目了
#其实说起來,这只是select+options_from_collection_for_select的组合啦!
#范例:
<%= collection_select(:payment, :id, @payments, :id, :name, options ={:prompt => "-Select a continent"}, :class =>"payment") %>

转载于:https://www.cnblogs.com/zs-note/p/3905209.html

rails表单控件helper相关推荐

  1. 表达式 控件 html,获取HTML表单控件的UrlEncode字符串表达式

    /** * *  UrlEncode *  http://www.cnitblog.com/9jian/ * *  获取 Input(checkbox,radio,text,password).Tex ...

  2. autojs遍历当前页面所有控件_HTML5表单和表单控件的使用

    哈喽大家好,我是作者"未来",本期分享的内容是Web前端系列课程,本系列总共29个阶段,坚持学习3个月蜕变为Web前端高手哦! 志同道合的小伙伴跟我一起学习交流哦! 第一阶段 HT ...

  3. Bootstrap 表单控件一(单行输入框input,下拉选择框select ,文本域textarea)

    单行输入框,常见的文本输入框,也就是input的type属性值为text.在Bootstrap中使用input时也必须添加type类型,如果没有指定type类型,将无法得到正确的样式,因为Bootst ...

  4. 一起学asp.net基础文章二 服务器控件、客户端控件和html表单控件

    首先解释一下这两个控件个概念. 所谓服务器控件 就是微软官方提供的如 textbox label dropdownlist等可以直接添加事件,属性 操作方式和winform类似的.net控件. 1.使 ...

  5. Angular19 自定义表单控件

    1 需求 当开发者需要一个特定的表单控件时就需要自己开发一个和默认提供的表单控件用法相似的控件来作为表单控件:自定义的表单控件必须考虑模型和视图之间的数据怎么进行交互 2 官方文档 -> 点击前 ...

  6. cocos2d-html5 简易 下拉表单 控件

    刚才在CH5的群里问了问  有没有大侠写过 下拉表单控件啊!  没人鸟窝 ,DZ老师表示非常伤心啊  ,于是乎  自己写一个把 共享给大家. 效果图上一个  仅仅实现了一个最最主要的控件  非常eas ...

  7. bootstrap -- css -- 表单控件

    若干css样式 .form-control { display: block;width: 100%;height: 34px;padding: 6px 12px;font-size: 14px;li ...

  8. Vue基础之表单控件绑定

    你可以用 v-model 指令在表单控件元素上创建双向数据绑定.它会根据控件类型自动选取正确的方法来更新元素.尽管有些神奇,但 v-model 本质上不过是语法糖,它负责监听用户的输入事件以更新数据, ...

  9. 『ExtJS』表单(一)常用表单控件及内置验证

    几点说明 关于ExtJS的表单,我打算分为三个部分来写 常用表单控件及内置验证 -- 这里主要是JS代码 表单行为与Asp.NET页面的消息回复 -- 这里既有JS代码,与有C#代码,我主要是使用As ...

最新文章

  1. 【Spring】spring基于纯注解的声明式事务控制
  2. CAS KVM 虚拟机的保护与恢复
  3. asp.net MVC3 弹出窗口里嵌一个View代码
  4. 山东工业大学计算机及应用,彭玉旭副教授
  5. 92年清华本科,做了30年技术,43岁在CTO的位置上被优化!找了一年多工作,有些迷茫!...
  6. python os 常用方法_【Python 库】os 模块常用方法简介
  7. GDB 多线程调试:只停止断点的线程,其他线程任然执行; 或只运行某些线程 其他线程中断...
  8. 8.4完成服务(Completion Services)
  9. 真正的手机密码大全!(整理完整版)
  10. PDF转jpg for MAC
  11. Alignment--本地blast使用详解1-数据库序列检索下载及比对
  12. 使用 emeditor 删除空行
  13. z-index诡异事件之背锅侠
  14. 用 Python 创建属于自己的网易云音乐
  15. python下载微信公众号文章_一步步教你打造微信公众号文章爬虫(3)-批量下载
  16. 深圳云计算培训:云计算是怎么分类的
  17. 美国服务器网站没有收录的原因分析
  18. VS 2012 Dotfuscator and Analytics 'j8' 类型初始值设定项引发异常 解决方法
  19. Ubuntu 下的nis认证
  20. 51单片机——串行通信

热门文章

  1. alink的相關資料收集
  2. 调整xfce中的鼠标大小到48以上-目前还没有完成
  3. pad_sequences序列填充(转载)
  4. ERROR: cannot start IntelliJ IDEA. No JDK found to run IDEA. Please validate either IDEA_JDK, JDK_HO
  5. Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915
  6. 机器学习——决策树的三种学习方法
  7. 深度学习(七)—— GAN
  8. 【神经网络】线性模型非线性模型,感知机与神经网络
  9. 【机器学习基础知识】各类熵总结
  10. How to DEBUG a trigger or procedure