jquery在rails上隐藏表单提交按钮单击
我的rails视图中有以下表单:jquery在rails上隐藏表单提交按钮单击,jquery,ruby-on-rails,Jquery,Ruby On Rails,我的rails视图中有以下表单: <%= form_for :search do |f| %> <%= f.label :search_by_name %> <%= f.text_field :by_name %> <%= f.submit 'Search' %> <% end %> 这将导致所有h1标记在单击h1标记时不可见。我如何通过点击上面表格的“提交”按钮,使整个表格不可见 编辑 也许这个
<%= form_for :search do |f| %>
<%= f.label :search_by_name %>
<%= f.text_field :by_name %>
<%= f.submit 'Search' %>
<% end %>
这将导致所有h1
标记在单击h1
标记时不可见。我如何通过点击上面表格的“提交”按钮,使整个表格不可见
编辑
也许这个问题比我想象的要大一点。当我按照以下答案进行此操作时:
$("form").submit(function(){
$(this).hide();
})
表单变得不可见,但随后页面立即重新加载,表单再次可见。在重新加载页面之前,它会在瞬间不可见。有没有一种方法可以在页面之间传递这种影响,或者在不重新加载页面的情况下显示表单结果
编辑2
问题解决了。我将表单包装在一个div类中,并将该ID传递到hide函数中,如下面的注释所述,这似乎有效。我不明白为什么在传递表单时,页面只是重新加载和显示表单,但在传递id
时,页面没有这种效果。但是,问题解决了。试试看
$("form").submit(function(){
$(this).hide();
})
在我看来,Ajax是您想要的(就像@arieljuod所说的),但是如果您只是想隐藏表单而不将数据传递给服务器,那么您就可以阻止事件的发生
$("form").submit(function(e){
e.preventDefault();
$(this).hide();
})
表格的id是什么?只需在隐藏函数中使用它,您就可以了解ajax,阅读有关远程表单ajax的内容,是时候咬紧牙关了。谢谢
$("form").submit(function(e){
e.preventDefault();
$(this).hide();
})