使用foundation-beat验证文本字段的长度
Use foundation abide to validate length of a text field?
我正在rails应用程序中使用foundation,我正在寻找一种验证表单中文本字段长度的方法:当文本字段包含太多字符时(但当它为空时),我希望显示错误。
我尝试使用Foundation的遵守并创建自定义命名模式,如文档中所述。
以下是我的application.js
文件的内容,包括Foundation初始化时的自定义模式:
$(function(){
$(document)
.foundation()
.foundation('abide', {
patterns: {
short_field: /^.{,40}$/,
long_field: /^.{,72}$/
}
});
});
这是我在视图中的表单代码:
<form data-abide>
<div class="long-name-field">
<input type="text" pattern="long_field" placeholder="Long Field">
<small class="error">Too long.</small>
</div>
<div class="short-name-field">
<input type="text" pattern="short_field" placeholder="Short Field">
<small class="error">Too long.</small>
</div>
</form>
问题是,当我加载表单页面时,所有字段总是显示错误消息,无论它们是空的、在字符限制下填充的还是超过字符限制的。
有人成功地使用了遵守来做类似的事情(或者知道不使用自定义命名模式的更好方法)吗?
干杯。
我终于成功了!
问题是/^.{,40}$/
不是有效的regexp语法,您必须显式使用/^.{0,40}$/
。
我把它误认为是/.{5,}/
语法,您可以使用它来施加一个下限。
我无法让javascript在我的Rails 4应用程序中正常工作,所以我只是直接添加regex作为属性,如下所示:
<%= text_area_tag 'answer', @current_answer,
:placeholder => 'required', :required => '', :pattern => '^(.){0,1000}$' %>
对于验证最小长度,我只使用:
<%= text_area_tag 'answer', @current_answer,
:placeholder => 'required', :required => '', :pattern => '^(.){100,}$' %>
相关文章:
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 当设置addFromAutocompleteOnly时,剩余文本将保留在输入字段中
- 使用jquery将输入字段转换为文本
- 如何从查询字符串中的输入字段发回文本
- 表单输入字段随着溢出的文本而增长
- 使用单个文本框向多个字段添加严格搜索
- 使用javascript提交表单并从字段/单选框/复选框/文本区域获取数据
- 使用jQuery的输入字段文本换行
- 向使用jQuery加载DOM后添加的字段添加不受限制的文本输入DatePickers
- 当用户单击按钮(在光标位置)时,在输入字段中添加一个文本字符串
- 如何根据文本长度立即显示和隐藏字段?-JQuery
- 当输入字段(文本框)有值时,选中/取消选中复选框
- 重置时输入字段文本css
- 将输入字段文本放入变量中并将其用于 jquery JSON get 请求
- 在 html 输入字段 (文本框) 中插入 javascript (jquery) 变量
- 搜索字段文本没有't在FF 3.6中显示
- 主干集合url操作与输入字段文本
- 如何大写输入字段文本的第一个字母,而键入javascript
- 如何使用angularjs在同一字段中键入时动态格式化输入字段文本
- 如何将输入字段(文本框)添加到使用jQuery动态创建的表中