Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
轨道4+;Jquery验证&x2B;遥远的_Jquery_Ruby On Rails_Ruby_Validation - Fatal编程技术网

轨道4+;Jquery验证&x2B;遥远的

轨道4+;Jquery验证&x2B;遥远的,jquery,ruby-on-rails,ruby,validation,Jquery,Ruby On Rails,Ruby,Validation,我在这里面临一个问题,我有一个由Deviate创建的表单,我假设你们知道Deviate没有为我们的模型用户创建控制器文件,也就是说,我在views文件夹/Deviate/registration/new.html.erb中有一个表单,我使用jQuery验证插件进行客户端验证,因为gem不起作用,它已经完全过时,不再有支持,让它工作起来有点困难,无论如何,我有一个视图文件(表单),一个包含jquery验证规则和消息的*.js文件,一个名为User的模型,我尝试做的是远程方法,这是jquery验证插

我在这里面临一个问题,我有一个由Deviate创建的表单,我假设你们知道Deviate没有为我们的模型用户创建控制器文件,也就是说,我在views文件夹/Deviate/registration/new.html.erb中有一个表单,我使用jQuery验证插件进行客户端验证,因为gem不起作用,它已经完全过时,不再有支持,让它工作起来有点困难,无论如何,我有一个视图文件(表单),一个包含jquery验证规则和消息的
*.js
文件,一个名为User的模型,我尝试做的是远程方法,这是jquery验证插件的一个特性,唯一的问题是我不知道怎么做,我看过一些教程,但它们都是针对rails 3的,几乎完全不同,这就是我所说的教程:

我该怎么做?由于我没有访问用户控制器的权限,我用一些方法创建了一个用户控制器,我尝试添加这个方法(在上面的url中找到)

我还创建了一个到这个方法的路由,我不知道我是否做得正确

这来自教程(routes.rb):

这就是我在routes.rb中所做的(注意:我有一个名为user的控制器,而不是users):

我运行了rake路由,路由/用户/检查电子邮件在那里

最后,我为电子邮件输入输入了jquery规则:

remote: '/user/check_email'
它根本不起作用,它不能在客户端验证唯一性,表单提交也不起作用

我做错了什么?我只是想在客户端添加唯一性验证


提前谢谢

由于您使用的是rails 4,TurboLink可能已启用,在这种情况下,
$(文档)。ready
将无法工作,您必须使用:


$(document).on(“ready page:load”,function(){})

检查firebug。。是否触发电子邮件唯一性调用(打开firebug,转到控制台,尝试键入一些随机电子邮件,您应该会看到在您键入的每个单词上向服务器触发ajax调用)。此外,由于您使用的是rails 4,TurboLink可能已启用,在这种情况下,$(document)。ready将不起作用,您必须使用$(document)。on(“ready page:load”,function(){嘿,伙计们,多亏了你们,我把“$(document).ready”改为“$(document).在(“ready page:load”,function(){”上,它工作得很好!谢谢
map.check_email "users/check_email", :controller => "users", :action => "check_email"
map.resources :users
resources 'user' do
 get 'check_email', :on => :collection
end
remote: '/user/check_email'