1, Dealing with Basic Forms
<%= form_tag({:controller=>"cname", :action=>"aname"},{:id=>"iname", :class=>"cstyle", :name=>"fname"}) do %> <%= text_field_tag :name, nil, :class=>"class1" %> <%= password_field_tag :password %> <%= submit_tag("Login",{:name=>"mysubmit"}) %> <% end %> #注意不是<%= end %> 代码生成如下 <form accept-charset="UTF-8" action="/cname/aname" class="cstyle" id="iname" method="post" name="fname"> <input class="class1" id="name" name="name" type="text" /> <input id="password" name="password" type="password" /> <input name="mysubmit" type="submit" value="Login" /> <form>
controller中用params[:name]和params[:password]获取数据
2, Dealing with Model Objects
<%= form_for @user, :url => url_for(:controller => 'kangli', :action => "login"), :html => {:class => "cstyle", :name => "nname", :id => "iname"} do |f| %> <%= f.text_field :name, :id=>"name" %> <%= f.password_field :password, :class=>"class1" %> <%= f.submit "login", :class => "class1" %> <% end %> 代码生成如下 <form accept-charset="UTF-8" action="/kangli/login" class="cstyle" id="iname" method="post" name="nname"> <input id="name" name="user[name]" size="30" type="text" /> <input class="class1" id="user_password" name="user[password]" size="30" type="password" /> <input class="class1" name="commit" type="submit" value="login" /> </form>
controller中用params[:user][:name]和params[:user][:password]获取数据
表单提交的验证可以通过在model里面配置,不过个人觉得用coffeescript或者jquery都是很方便实现的
方法一——coffeescript,编辑assets/javascript目录的对应文件,添加如下代码,注意不要用tab而是空格来缩进
$(document).ready -> $('#iname').submit -> if $('#user_name').val() == '' or $('#user_password').val() == '' alert "name or password should not be true" $('#user_name').focus() return false else return true
rails会在加载页面时将上面的代码转换为如下的javascript代码
(function() { $(document).ready(function() { return $('#iname').submit(function() { if ($('#user_name').val() === '' || $('#user_password').val() === '') { alert("name or password should not be true"); return false; } else { return true; } }); }); }).call(this);
方法二——jquery,编辑view文件添加javascript
<script type="text/javascript"> $(document).ready(function(){ $("#iname").submit(function(){ if ($("#user_name").val() == "" || $("#user_password").val() == ""){ alert("name or password should not be null"); $("user_name").focus(); return false; } }) }); </script>
相关推荐
Rails Bootstrap Forms - rails表单生成器,很容易将Twitter Bootstrap 3 风格表单集成到你的rails应用程序中
Rails表单变得容易。 简单表单旨在在帮助您使用功能强大的组件创建表单的同时尽可能地灵活。 Simple Form的基本目标是不触及定义布局的方式,而是让您为眼睛找到更好的设计。 大多数DSL都是从Formtastic继承的,...
请注意,这适用于Rails生成的验证消息。 开箱即用HTML 5客户端验证和Rails验证不能很好地协同工作。 是对挑战的讨论和一些解决方案 在必填字段上自动。 一种在字段上始终显示文本的简便方法。 如果需要的话,可以...
documentation本文档适用于master分支,该分支尚未稳定,并且针对Bootstrap v4。 如果您使用的是Bootstrap v3,请参阅稳定的legacy-2.7分支。...bootstrap_forms的表单助手会生成form字段及其标签以及所有Bootstrap m
带有 simple_form 和 bootstrap3 的 Rails 表单生成器 安装 将此行添加到应用程序的 Gemfile 中: gem 'simple_form_bootstrap3' 或这一行: gem 'simple_form_bootstrap3', git: '...
ComfyBootstrapForm bootstrap_form是一个Rails表单构建器,可以非常轻松地将表单集成到您的Rails应用程序中。要求Rails 5.0+ Bootstrap 4.0.0+安装将gem添加到您的Gemfile中并运行bundle install gem "comfy_...
提供生成动态表单的功能的Rails引擎。 要求 0.1分支 核磁共振2.5+ Rails 6.0+ 0.0.1分支 核磁共振2.3+ Rails 5.0+ 用法 现在看演示。 安装 将此行添加到您的Gemfile中: gem 'form_core' 或者您可能想直接从...
第10章 MVC的数据持久化层。本章详细介绍Rails数据持久化技术ActiveRecord的使用,...本章详细介绍Rails中视图层的使用,包括模板的分类、引用外部文件、格式化输出、使用超链接、生成表单元素,以及Helper类的使用等。
唯一神奇的部分是生成属性名称,并确保Rails期望的字段存在于表单上。 有两种类型的组件。 “ FieldTag”组件 带有Tag后缀的组件根本不是魔术。 它们的存在是为了反映[Rails form helpers] []来表达意图的。 它们...
请记住,您是第一次生成Rails支架并几乎立即开始从Web表单中创建和编辑数据库中的记录。 我敢打赌,这吸引了很多人。 它肯定引起了我的注意。 不久,您需要在Rails应用程序中创建一个页面,该页面必须从单个表单...
一个定制的FormBuilder,它使用Foundation框架类生成表单。 它替换了当前的form_for ,因此无需更改您的Rails代码。 错误消息正确显示。 一个使用Zurb Foundation标注UI的display_flash_messages帮助程序方法。 ...
12.1 生成XML 129 12.2 扫尾工作 136 第13章 任务I:国际化 139 13.1 迭代I1:翻译 139 13.2 迭代I2:探索内容的翻译策略 149 第14章 任务T:测试 151 14.1 加上测试 151 14.2 模型的单元测试 152 14.3 控制器的功能...
提供 rails 生成器和简单的配置加载。 从阅读有关支持的提供程序和配置选项的更多信息。 安装 在您的Gemfile添加ipizza-rails gem: gem ipizza-rails 用法 要在 Rails 应用程序中开始使用 iPizza,您需要先运行...
可以使用以下定制的简单表单输入: 布尔值 collection_check_boxes collection_radio_buttons 约会时间 文件 图像 数字 编辑器 选择 滑杆 颜色 这些输入中的大多数带有内置的javascript插件,有时取决于外部gem,...
灰烬形态生成器 关于 Ember Form Builder是一个Ember插件,可让您组装带有标签,验证和提示的表单,而无需重复自己的工作。 它受到Rails宝石的强烈启发。 Ember Form Builder 2.X需要Ember 3.16.0+ Ember Form ...
Cocoon与表单生成器无关,因此可与标准Rails,Formtastic或SimpleForm一起使用。 它与导轨3、4和5兼容。该项目与Apache Cocoon不相关。 先决条件此gem取决于jQuery,因此在您已经在使用jQuery的Rails项目中,它最...
与许多Rails CMS引擎一样,Fae提供了使您快速启动并运行的所有基础知识:身份验证,授权,时尚的UI,表单助手,图像处理和工作流。 但是与其他引擎不同,Fae生成的模型,控制器和视图是为了自定义和缩放而构建的。 ...
威宝WAIAble的宝石是Rails W eb的一种可能性,我对这种能力提出了不同的看法。 WAIAble gem将以rails形式... 为了使表单标签可访问,添加了aria-labelledby属性,并为带有'for'属性的label元素生成了默认id属性。 对
在我们回顾了Rails中每个流行的生成器。 我故意遗漏了一个:Rails scaffold发电机。 这样做的原因主要是由于在生产应用中使用脚手架不是一种好的做法。 话虽如此,我认为研究脚手架非常重要,因为它们可以为我们如何...