Я хочу отправить форму через AJAX. Когда я отправляю форму, она должна отправить ajax и затухать в div с id stepTwo и затухать текущий div. Я использую jQuery 1.8.0, и у меня есть эта ошибка в моей консоли, когда я отправляю.Rails AJAX форма представления
NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMWindow.getComputedStyle]
[Break On This Error]
...=[]),o&&(e=" "+e);while(e){k=!1;if(j=B.exec(e))e=e.slice(j[0].length),k=d.push({...
Вот мой HTML:
<div id="stepOne">
<%= form_for @program do |f| %>
<div>
<label for="exerciseName">Title For Your Program</label>
<%= f.text_field :title, :name => "exerciseName", :required => "required", :maxlength => "40" %>
</div>
<div>
<label for="exerciseName">Detailed Info For Your Program</label>
<%= f.text_area :details %>
</div>
<%= f.submit "Next Step", :class => "exbuttons button-small red rounded3", :id =>"stepOneButton" %>
<% end %>
</div>
А вот мой контроллер
# POST/программы # POST /programs.json Защиту создать @program = Program.new (PARAMS [: progeram]) @ program.user_id = current_user.id
respond_to do |format|
if @program.save
if request.xhr?
render @program
else
redirect_to @program
end
else
if request.xhr?
render @program
else
flash[:error] = "Program could not be added"
redirect_to new
end
end
end
end
И это мой Javascript файл
function stepOne(){
$('#new_program').submit(function(event){
event.preventDefault();
var f = $(this);
f.find('input[type="submit"]').attr("disabled", true);
$.ajax({
type: f.attr("method"),
url: f.attr("action"),
data: f.serialize(),
complete: function(){
f.find('input[type="submit"]').attr("disabled", false);
},
success : function(data){
console.log(data);
$(this).fadeOut();
$('#stepTwo').delay(400).fadeIn();
},
error : function(xhr, status){
console.log(status);
}
});
});
}