레일에서 ajax 요청 (양식에 remote : : true 설정)을 사용하여 리디렉션하려고합니다. 이것이 제가 가진 문제입니다. 컨트롤러에서 AJAX 호출 중 렌더링 또는 redirect_to 레일에 문제가 발생했습니다.
, 내가 가진 : 모델def create
user = User.new
user.attributes = params[:user]
if user.save
if request.xhr?
flash[:notice] = "User successfully created"
render js: %('#{user_url(user.id)}')
end
else
if request.xhr?
render partial: "form"
else
render action: 'new'
end
end
end
, 뷰에서
class user
validates :total_amount, presence: true, numericality: {greater_than: 0}
end
, 자바 스크립트는 다음과 같습니다
$("#new_user").bind("ajax:success", function(evt, data){
if(data.length < 300){
window.location.replace(data.replace(/['\s]/gi, '')); # on success rendering the url.
}
else {
$("#errors").html($(data)); # if there are any errors, i have a div tag around form, which will replace the form html
}
});
내가 (제출에 그것을 클릭하면 아약스 요청입니다) 총 금액 (필요한) 사용자에 대해 0.0으로 남겨두고, 나는 예상 된 동작입니다 유효성 오류가 및 유효성 검사 오류가 표시됩니다, 이것은 javascript의 else 부분입니다). 이제 금액을 1.0으로 입력하고 제출을 클릭하십시오 (이 역시 아약스 요청입니다). 자바 스크립트에서 if 부분으로 이동하지 않습니다.
여기서 내가 뭘 잘못하고 있니?
그것의 발사'아약스 : 두 경우에 success'. 이유는 모르겠다. – Kumar
전체 컨트롤러 동작 코드는 무엇입니까? – AJcodez
컨트롤러 코드가 업데이트되었습니다. – Kumar