Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript rails 3设计:注销时销毁本地存储和会话存储?_Javascript_Ruby On Rails 3_Devise_Ruby On Rails 3.2_Rubygems - Fatal编程技术网

Javascript rails 3设计:注销时销毁本地存储和会话存储?

Javascript rails 3设计:注销时销毁本地存储和会话存储?,javascript,ruby-on-rails-3,devise,ruby-on-rails-3.2,rubygems,Javascript,Ruby On Rails 3,Devise,Ruby On Rails 3.2,Rubygems,我正在使用Rails3Desive,我已经创建了一些HTML5Web存储。现在,若用户点击注销链接,我想显示一条确认消息。若用户点击ok按钮,我想将我的sessionStorage值设置为null,现在用户将从应用程序中注销。 我继承了Desive会话控制器,如: class SessionController < Devise::SessionController def destroy # code ? end end class SessionCont

我正在使用Rails3Desive,我已经创建了一些HTML5Web存储。现在,若用户点击注销链接,我想显示一条确认消息。若用户点击ok按钮,我想将我的sessionStorage值设置为null,现在用户将从应用程序中注销。

我继承了Desive会话控制器,如:

 class SessionController < Devise::SessionController
   def destroy
     # code ?
   end
 end
class SessionController
实际上,我可以使用javascript代码将sessionStorage值设置为null:

<script>
  $(document).ready(function(){
    if(confirm("Are you sure want to logout?")){
        sessionStorage.value = null;
    }
    return false;
  })
</script>

$(文档).ready(函数(){
如果(确认(“您确定要注销吗?”)){
sessionStorage.value=null;
}
返回false;
})

但当用户单击注销链接时,我如何实现此代码?如何解决此问题?

您可以通过重定向注销方法来执行Javascript操作。例如:

def destroy
    // ... other actions...
    redirect_to destroy_localstore_path  
end

def destroy_localstore
end
在destroy_localstore.js.erb中

sessionStorage.value = null;

您可以通过重定向注销方法来执行Javascript操作。例如:

def destroy
    // ... other actions...
    redirect_to destroy_localstore_path  
end

def destroy_localstore
end
在destroy_localstore.js.erb中

sessionStorage.value = null;