0
我有一個表單,我把它放在頁面內的IFrame中。 IFrame顯示帶有按鈕的導軌形式以保存和取消鏈接。Rails 3.0和JQuery表單回調沒有觸發
我添加的iFrame與此代碼:
$('#saveAreaForm').contents().find('#cancel_save').click(function() {
$('#saveAreaForm').remove();
});
$('#saveAreaForm').contents().find('#create_area_form').bind("ajax:failure", function(xhr, status, error) {alert("failure!");});
$('#saveAreaForm').contents().find('#create_area_form').bind('ajax:success', function(xhr, status, error) {alert("failure!");});
清除表單鏈接工作正常,但回調永遠不會觸發。
我在控制檯看到控制器代碼被觸發,但我無法接收成功或失敗。
這是形式的代碼(HAML):
= simple_form_for(@area, :remote => true, :html => { :'data-type' => 'html', :id => 'create_area_form' }) do |f|
- if @area.errors.any?
#errorExplanation
%h2= "#{pluralize(@area.errors.count, 'error')} prohibited this user from being saved:"
%ul
- @area.errors.full_messages.each do |msg|
%li= msg
.field
= f.label :name
%br
= f.text_field :name
.field
%br
= f.association :area_group
%br
.actions
= f.submit
= link_to 'Cancel', '#', {:id => 'cancel_save'}
這是控制器功能:
# POST /areas
# POST /areas.xml
def create
@area = Area.new(params[:area])
respond_to do |format|
if @area.save
format.html { redirect_to(@area, :notice => 'Area was successfully created.') }
format.xml { render :xml => @area, :status => :created, :location => @area }
else
format.html { render :action => "new" }
format.xml { render :xml => @area.errors, :status => :unprocessable_entity }
format.json { render :json => @area.errors, :status => :unprocessable_entity }
end
end
end
有我俯瞰這東西明顯?
我已經研究過路線文件,並且我認爲所有設置都正確(並且我知道我正在觸發正確的控制器方法)。 – gugguson