2012-07-13 82 views
0

二维数组会话我有一个二维数组会话和我试图清除它在打印账单后。要这样做我使用此代码清除使用JSP

<script type="text/javascript"> 
    function textsizer(e) { 
    var evtobj=window.event? event : e; 
    var element = evtobj.target ? evtobj.target : evtobj.srcElement; 
    if (element.tagName.toLowerCase() == "body") { 
     var unicode=evtobj.charCode? evtobj.charCode : evtobj.keyCode; 
     var actualkey=String.fromCharCode(unicode) 
     if(actualkey=="x"){ 
      show_confirm() 
      function show_confirm(){ 
      var con = confirm("Are You Sure you wan to cancel this bill?"); 
      if (con ==true){ 
       session.invalidate(); 
      } 
      else{ 
      alert("You pressed Cancel!"); 
      } 
      } 
     } 
    } 
} 
document.onkeypress=textsizer 
</script> 

但此代码不清除会话。我试过它使用谷歌浏览器和Internet Explorer,但没有奏效。任何人都可以帮助我做这件事吗? 我也试图用php来做,但它也不适合我。我的情况,我想通过键盘按x删除会话也不管是什么语言,我只是要清除的会话按X键

+0

jsp? Java服务器页面? – 2012-07-13 17:54:46

回答

0

您可以使用JavaScript时按下“X”键拍摄,并重定向到一个PHP页面来清除会话。所以你想沿线的东西:

//Your main page 
<script type='text/javascript'> 
window.onkeypress = function() { 
    if (event.keyCode == 88) { 
     window.location = 'clear_session.php'; 
    } 
} 

//clear_session.php 
session_start(); 
session_unset(); 
session_destroy(); 
header ("Location:main_page.php"); //redirect back to main page 
+0

是的,我用这种方式。但是当我使用这种方式时,它只会清除会话一次。当我第一次添加并清除它时,我可以第二次添加该项目。但如果我再次清除它,并且如果尝试再次添加相同的项目,则会发生该错误。 “你想添加一个相同的...” – Yasitha 2012-07-13 18:07:46