Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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
Ruby on rails Rails:如何使用Ajax Jquery打印错误消息?_Ruby On Rails_Ruby On Rails 3_Jquery - Fatal编程技术网

Ruby on rails Rails:如何使用Ajax Jquery打印错误消息?

Ruby on rails Rails:如何使用Ajax Jquery打印错误消息?,ruby-on-rails,ruby-on-rails-3,jquery,Ruby On Rails,Ruby On Rails 3,Jquery,目前,这是我创建新邮件的代码: if @message.save respond_to do |format| format.html { redirect_to messages_path } format.js end else flash[:notice] = "Message cannot be blank!" redirect_to :back end 如何在Ajax中打印相同的消息?还希望控件对其进行格式化和定位。

目前,这是我创建新邮件的代码:

  if @message.save
    respond_to do |format|
      format.html { redirect_to messages_path }
      format.js
    end
  else
    flash[:notice] = "Message cannot be blank!"
    redirect_to :back
  end

如何在Ajax中打印相同的消息?还希望控件对其进行格式化和定位。

在应用控制器中

  after_filter :add_flash_to_header

  def add_flash_to_header
    # only run this in case it's an Ajax request.
    return unless request.xhr?

    # add different flashes to header
    response.headers['X-Flash-Error'] = flash[:error] unless flash[:error].blank?
    response.headers['X-Flash-Warning'] = flash[:warning] unless flash[:warning].blank?
    response.headers['X-Flash-Notice'] = flash[:notice] unless flash[:notice].blank?
    response.headers['X-Flash-Message'] = flash[:message] unless flash[:message].blank?

    # make sure flash does not appear on the next page
    flash.discard
  end
将通知代码移动到部分:

<div class="noticesWrapper">
  <% flash.each do |name, msg| %>
    <div class="alert alert-<%= name == :notice ? "success" : "error" %>">
      <a class="close" data-dismiss="alert"><i class="icon-remove"></i></a>
      <%= msg %>
    </div>
  <% end %>
</div>

js.erb文件中:

$('.noticeswapper').html(“”)

在控制器操作中,您需要使用flash刷新消息。现在:

flash.now[:error]=“您的消息”