Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.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
Javascript 如何在my create.js.erb中重置/清除表单?_Javascript_Ruby On Rails_Ajax_Ruby On Rails 3_Ruby On Rails 3.1 - Fatal编程技术网

Javascript 如何在my create.js.erb中重置/清除表单?

Javascript 如何在my create.js.erb中重置/清除表单?,javascript,ruby-on-rails,ajax,ruby-on-rails-3,ruby-on-rails-3.1,Javascript,Ruby On Rails,Ajax,Ruby On Rails 3,Ruby On Rails 3.1,我无法正确重置我的表单。它提交并进入数据库,但所有内容都保留在表单上 这是我的密码: 狗控制器 def create @dog = current_user.dogs.new(params[:dog]) if @dog.save format.js else format.js end end def add @dog = Dog.new @cat = Cat.new @bird = Bird.new end dog/creat

我无法正确重置我的表单。它提交并进入数据库,但所有内容都保留在表单上

这是我的密码:

狗控制器

def create
  @dog = current_user.dogs.new(params[:dog])
  if @dog.save
    format.js
  else
    format.js
  end
end
  def add
    @dog = Dog.new
    @cat = Cat.new
    @bird = Bird.new
  end
dog/create.js.erb

$('.add-dog-form').html('<%= escape_javascript(render(:partial => 'dogs/form', locals: { dog: @dog })) %>');
$('.add-dog-form > form')[0].reset(); // doesn't work
$('.add-dog-form').html('<%= escape_javascript(render(:partial => 'dogs/form', locals: { dog: @dog })) %>');
pets/add.html.erb

$('.add-dog-form').html('<%= escape_javascript(render(:partial => 'dogs/form', locals: { dog: @dog })) %>');
$('.add-dog-form > form')[0].reset(); // doesn't work
$('.add-dog-form').html('<%= escape_javascript(render(:partial => 'dogs/form', locals: { dog: @dog })) %>');
我单击选项卡,使用将其更改为“狗”选项卡



如果创建了表单,如何重置表单?

尝试为表单提供一个id:

<%= form_for(@dog, :remote => true, :html => { :id => 'dog_form' } ) do |f| %>
true,:html=>{:id=>'dog_form})do | f |%>
$('#dog_form')[0].reset()


或者,您可以执行
$(“:input:not(input[type=submit])”).val(“”)

看来我的错误就在我的文件本身。我将js文件创建为部分文件,而不是常规页面。i、 e.
\u create.js.erb
应该是
create.js.erb
。我还必须在控制器
create
操作中添加
respond|u to do | format |
。现在我一切都正常了。

$('dog_form')[0]。重置();