我在我的rails 3.2应用程序中使用devise。在设计中创建动态添加用户表单
我有一个用户/新页面,其中管理员用户填写电子邮件地址,然后用随机密码创建用户。
所有这些工作正常。
我想要做的是创建一个动态表单,以便管理员可以根据需要创建尽可能多的用户。应该有一个“添加用户字段”按钮和一个“删除用户字段”按钮,允许为用户生成新字段。
我似乎无法让jquery与表单一起工作。
我试着用什么在这个计算器问题被描述:
我的代码是这样的(请注意,我在使用形式的@user代替@manager以免混淆轨道与CURRENT_USER。不过@manager创建有一项用户。
用户/新
<%= form_for(@manager) do |f| %>
<% if @manager.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@manager.errors.count, "error") %> prohibited this manager from being saved:</h2>
<ul>
<% @manager.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :email %><br />
<%= f.text_field :email %>
</div>
<span class="add">Add fields</span>
<div class="actions">
<%= f.submit %>
应用程序/资产/ Java脚本/应用程ation.js
//= require jquery
//= require jquery_ujs
//= require_tree .
$(document).ready(function() {
$(".add").click(function() {
$(".field:first").clone(true).insertBefore(this);
return false;
});
});
不过,当我点击添加字段时,什么也没有发生。我非常确定,如果我可以让表单提交正确的参数,那么我可以让控制器做我想做的事情。
基本上,为什么克隆函数不能在上面的例子中工作,我怎样才能获得一个动态表单来一次创建多个设计用户。
此外,我遗漏了删除字段的方法,因为它显然不工作。
编辑:我将选择器更改为“.add”,并将“.field”更改为“.field:first”,但它仍然不起作用。
好了,所以我改成了“新增”,但它仍然不工作... – NielMalhotra 2012-03-14 19:07:00
作品在这里:http://jsfiddle.net/aMAa7/ – charlietfl 2012-03-14 19:11:06
因此,出于某种原因,我从您推荐的内容切换开始,然后改回来开始工作。我想我有一个错字或什么的。不过,我很确定你回答了我的问题 – NielMalhotra 2012-03-14 20:10:08