0

通常我们可以使用多种方式来使用 ajax 进行验证,例如使用validate插件或使用普通 ajax(无 rails ajax),如下所示

使用ajax请求的数据

$.post("test.php", $("#testform").serialize());

在你的情况下,它可能是这样的。

$('#your_form').submit(function(event) {
  event.preventDefault(); 
  /* Email validation here.*/
  $.ajax({
    type: "POST",
    url: $(this).attr('action'),
    data: $(this).serialize(),
  });
});

但是,我希望将客户端验证与 Real Rails ajax 一起使用。请帮助如何做到这一点?

4

1 回答 1

2

也许你想使用这个宝石

更新 1:

由于您想通过 ajax 执行此操作,因此可以通过您的控制器处理验证。

# Let's assume your remote request hits index

def index
 @object.create(params[:object])

 respond_to do |format|
  format.html # index.html.erb
  format.js
 end
end

现在,在相关的视图文件夹中定义一个 index.js.erb 并渲染

<% if @object.new_record? %>
 alert("Failed to upload record: <%= j @object.errors.full_messages.join(', ').html_safe %>");
于 2012-12-18T07:21:26.003 回答