[英].submit don't work when I use ajax in rails
我建立一个网站,
用户需要签名他们的信息和一个“特殊密钥”
如果他们没有输入密钥,他们将是普通用户,如果他们使用右键,他们将是超级用户,但是如果密钥是错误的,他们将不通过,直到他们使用正确的密钥。
密钥使用ajax终止控制器
并返回json {status:“ ok”}或{status:“ error”}
这是我的代码
$('#btn').click(function(e){
if(keystring.length > 0){
$.ajax({
type: "POST",
url: "check",
data: { key:keystring },
dataType:'json',
async:false,
success: function( datajson ) {
if(datajson.status == "wrong"){
alert("wrong, please input the right key");
}else{
$('#confirm').submit();
}
}
});
}else{
$('#confirm').submit();
}
});
问题是
如果我输入右键或无键$('#confirm')。submit(); 不会执行!!
为什么?
提交将在不使用ajax时执行
感谢您的帮助,这是我的控制器
def check
@key = KeyChain.find_by({ code: params["key"]})
if @user_info.present?
datajson = { status:"ok" }
else
datajson = { status:"wrong"}
end
respond_to do |format|
format.json {
render :json => datajson.to_json
}
end
end
keystring
的值是keystring
? 它是否已定义,是否为字符串,是否存在于闭包内部? 尝试显示带有alert
的keystring
值,以查看是否可以。
$('#btn').click(function(e){
alert(keystring);
if(keystring.length > 0){
$.ajax({
type: "POST",
url: "check",
data: { key:keystring },
dataType:'json',
async:false,
success: function( datajson ) {
if(datajson.status == "wrong"){
alert("wrong, please input the right key");
}else{
$('#confirm').submit();
}
}
});
}else{
$('#confirm').submit();
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.