Forum: Ruby on Rails Remote form is been submitted as html instead of javascript on second submit

Posted by rubyrookie (Guest)
on 2013-02-04 00:26
(Received via mailing list)
I have a remote form that is being submitted as html intead of 
javascript
on second attempt when clicking on update or create. The form gets
submitted as javascript on first attempt. The form gets submitted as 
html
on second attempt. On third attempt it gets submitted as javascript. I 
want
it to get submitted as javascript always. Can anyone help me out her to
figure it out?


Here is my form

<%= semantic_form_for  @restaurant,:remote =>true do |f|  %>
<div class="errors">

</div>
       <%= f.inputs do %>
      <%= f.input :name,:input_html => { :autocomplete =>"off"}%>
      <%= f.input :street %>
      <%= f.input :city %>
      <%= f.input :state %>
      <%= f.input :zip %>
      <%= f.input :country  %>
      <%= f.input :phoneNumber, :as => :phone %>

<% end %>


      <%= f.actions do %>
      <%= f.action :submit, :as => :button %>

     <% end %>
     <% end %>

  Resturant Controller->


class RestaurantsController < ApplicationController
  # GET /restaurants
  # GET /restaurants.json
  def index
    @restaurants = Restaurant.all

    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @restaurants }
    end
  end

  # GET /restaurants/1
  # GET /restaurants/1.json
  def show
    @restaurant = Restaurant.find(params[:id])

    respond_to do |format|
      format.html # show.html.erb
      format.json { render json: @restaurant }
    end
  end

  # GET /restaurants/new
  # GET /restaurants/new.json
  def new
    @restaurant = Restaurant.new

    respond_to do |format|
      format.html # new.html.erb
      format.json { render json: @restaurant }
    end
  end

  # GET /restaurants/1/edit
  def edit
    @restaurant = Restaurant.find(params[:id])
    respond_to do |format|
        format.html {}
        format.js {}
    end

  end

  # POST /restaurants
  # POST /restaurants.json
  def create
    @restaurant = Restaurant.new(params[:restaurant])
    respond_to do |format|
        @restaurant.save
        format.html { render action: "new" }
        format.js {}
    end
  end

  # PUT /restaurants/1
  # PUT /restaurants/1.json
  def update
    Rails.logger.fatal "In update"

    @restaurant = Restaurant.find(params[:id])
    respond_to do |format|
        @restaurant.update_attributes(params[:restaurant])
        format.html { render action: "edit" }
        format.js {}
    end
  end

  # DELETE /restaurants/1
  # DELETE /restaurants/1.json
  def destroy
    @restaurant = Restaurant.find(params[:id])
    @restaurant.destroy

    respond_to do |format|
      format.html { redirect_to restaurants_url }
      format.json { head :no_content }
    end
  end
end
Posted by tamouse mailing lists (Guest)
on 2013-02-04 11:47
(Received via mailing list)
On Sun, Feb 3, 2013 at 5:25 PM, rubyrookie <asajnani@gmail.com> wrote:
>
> <% end %>
>
>
>       <%= f.actions do %>
>       <%= f.action :submit, :as => :button %>
>
>      <% end %>
>      <% end %>

Maybe I'm not getting this, but isn't :remote => true in
semantic_form_for to be used when you're doing AJAX? Your form is
doing a straight HTTP POST it looks like to me...
Posted by rubyrookie (Guest)
on 2013-02-05 01:26
(Received via mailing list)
I thought default format is javascript.
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.