在我的页面上,我想检查用户是否已登录,如果他是我允许用户执行各种操作(如上传像下面的照片)。要检查如果用户登录,我写了jQuery的这个简单的功能..rails + jquery函数回调问题
$(document).ready(function(){
function checkLogin(callback){
<% if !current_user %>
$.colorbox({href:"/signup", width: "400px", height: "200px"});
var status = false;
callback(status)
<% end %>
}
,当我要检查,如果用户登录或不,我所说的上面:
$(".upload-pics").click(function(){
checkLogin(function(c){
if(c == false){
return false;
}
});
// open colorbox to upload pictures
$("a.upload-pics").colorbox();
})
问题是,每次我打电话给checkLogin并说用户没有登录时,“返回false”并不会阻止其他代码执行,这意味着无论如何都会触发上传图片的colorbox代码。真奇怪的是,“return false”确实被执行了,但并不能阻止剩下的代码执行。我的代码有问题吗?谢谢。
我不关注。函数checkLogin不会返回任何东西,所以在上面的例子中,x总是未定义的。我应该改变我的函数来返回一些值来满足x? – absolutskyy 2012-08-16 21:54:35
做了一些改变,并得到你在什么。谢谢。 – absolutskyy 2012-08-16 22:04:05