客户端验证 jquery 插件不起作用
Posted
技术标签:
【中文标题】客户端验证 jquery 插件不起作用【英文标题】:Client validate jquery plugin doesn't work 【发布时间】:2012-11-13 18:33:27 【问题描述】:我使用路径 assets\javascripts\jquery.validate.js (rails 3.2) 上的 jquery 插件进行客户端验证。但它不起作用。我的表格:
update_name_phone_city_user_registration_path, :html => :id => "form_edit_name", :method => :put , :remote => true) 做 |f| %> 10%> “提交”%>
我的 application.js 文件:
//= require jquery
//= require jquery_ujs
//= require bootstrap-modal
//= require_tree .
$(document).ready(function()
$("#form_edit_name").validate(
debug: true,
rules:
"user[name]":
required: true,
minlength: 2
,
"user[name]":
required: 'Your username is required',
minlength: 'The minimum number of characters is 2'
alert("ok");
);
);
怎么了?
UPD 1 生成的 HTML 代码
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/bootstrap-modal.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.validate.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>
<form accept-charset="UTF-8" action="/users" class="edit_user" id="form_edit_name" method="post">
<div><label for="user_name">Name</label><br />
<input id="user_name" name="user[name]" size="30" type="text" value="" /></div>
</form>
【问题讨论】:
【参考方案1】:假设您正在验证这样的测试输入
<input type="text" id="name" name="name" />
试试这个
$("#form_edit_name").validate(
debug: true,
rules:
"name": required: true, minlength: 2 ,
messages:
"name":
required: 'Your username is required',
minlength: 'The minimum number of characters is 2'
);
【讨论】:
@Stack Stack 你的 html 是什么样的? 我怀疑有一个带方括号的名称将适用于 jquery。 我认为,模式窗口有问题。 我通过 ajax 以模态方式加载了我的表单。从模态窗口中删除表单后,一切正常。【参考方案2】:解决方案似乎是将名称值放在引号中。
$("#form_edit_name").validate(
debug: true,
rules:
"user[name]": required: true, minlength: 2 ,
messages:
"user[name]":
required: 'Your username is required',
minlength: 'The minimum number of characters is 2'
);
看 jQuery Validator Plugin on Ruby on Rails 3?了解详情。
【讨论】:
以上是关于客户端验证 jquery 插件不起作用的主要内容,如果未能解决你的问题,请参考以下文章