【发布时间】:2014-02-02 21:46:51
【问题描述】:
所以我一直在寻找这个问题的答案,但我遇到了很多麻烦。我正在尝试在 Rails 中有一个 form_for,它会转到 User 控制器中的 create 操作,它会根据提交是否失败来更新提交按钮的颜色。这是我的代码,其中一些直接来自我在网上找到的教程:
class UsersController < ApplicationController
def new
@user = User.new
end
def create
@user = User.new(user_params)
respond_to do |format|
if @user.save
format.html { redirect_to @user, notice: 'User was successfully created.' }
format.js {}
format.json { render json: @user, status: :created, location: @user }
else
format.html { render action: "new" }
format.json { render json: @user.errors, status: :unprocessable_entity }
end
end
private
def user_params
params.require(:user).permit(:email)
end
这是我的 create.js.coffee.erb 文件。
if(!isValidEmailAddress($('#e_submit').val())){
$('.button').text("Invalid Email");
$('.button').animate({"background-color":"#FFBF00"},300);
$('.button').hover(function(){
$(this).css("background-color","#FFBF00");
}, function(){
$(this).css("background-color","#FFBF00");
});
$('#e_submit').css("box-shadow","0 0 0px rgba(0,0,0,0)");
$('#e_submit').val("");
}
基本上,我希望根据提交的信息发生不同的js事件,我不知道如何在rails中做到这一点。
【问题讨论】:
标签: javascript ruby-on-rails ajax ruby-on-rails-4