Rails 验证后如何清除表单
Posted
技术标签:
【中文标题】Rails 验证后如何清除表单【英文标题】:How to Clear Form AFTER Rails Validation 【发布时间】:2015-08-03 23:26:11 【问题描述】:我有一个表格,我想在提交时清除它。我遇到的麻烦是我的表单字段之一具有“存在:真实”验证。此验证在表单清除后执行,因此会产生错误并阻止保存表单数据。只有在验证发生后,我应该如何清除表单?
$(document).on('ready', function()
$('.bagelType').on('click', function()
$('#order_item_bagel_type').val($(this).data("bagel"));
)
$('#new_order_item').on('submit', function()
$('#order_item_bagel_type').val("");
);
);
<%= form_for order_item, remote: true do |f| %>
<%= f.hidden_field :bagel_type, value:"" %>
<%= f.submit "Submit" %>
<% end %>
【问题讨论】:
表单提交后。您希望字段为空。是吗? 【参考方案1】:$('input[value="sbumit"]').click(function()
$(this).siblings('input[type="text"]').removeAttr('required');
);
只要单击提交按钮,此js
代码就会运行,并且表单关联文本字段的必需验证将被删除。
希望对您有所帮助!
【讨论】:
【参考方案2】:你可以创建一个create.js erb文件
<% if @order_item.errors.any? %>
do some stuff here
<%else%>
write hide functionality here
<%end%>
【讨论】:
【参考方案3】:$("#form_id")[0].reset()
它将重置您的完整表单。
【讨论】:
【参考方案4】:$('#myForm').trigger("reset");
【讨论】:
以上是关于Rails 验证后如何清除表单的主要内容,如果未能解决你的问题,请参考以下文章
Codeigniter 表单验证 - 成功后如何取消设置表单值?