使用cookie,把session值写入cookie中,如果session超时后可以从cookie中读取值,当然在面被关闭后要把cookie清除掉。

解决方案 »

  1.   

    传递是可以的!我这儿有<script language=javascript>
    document.write("<%=session("user_id")%>");
    </script>这个是可以显示的!
      

  2.   

    我現在是情況是這樣﹐在topFrame和BottomFrame之間用Session傳遞數組﹕
    在TopFrame我有
    var crswgt_RecCnt=0,crdept_RecCnt=0,sql;
    var cr_wgna = new Array(50);
    var cr_dpna = new Array(30);
    var el_no = new Array(100);
    var el_name = new Array(100);
    var crruh_RecCnt=0;
    Session("el_no[100]")=el_no;
    Session("el_name[100]")=el_name;
    var crruhRs=Server.CreateObject("ADODB.Recordset");
    sql="SELECT crruh.el_no,crruh.el_name FROM crruh";
    crruhRs.Open(sql,crwageConn);
    while(!crruhRs.EOF)
         {
           Session("el_no[crruh_RecCnt]")=crruhRs("el_no");
           Session("el_name[crruh_RecCnt]")=crruhRs("el_name");
           crruh_RecCnt++;       crruhRs.MoveNext();
         }
    crruhRs.Close();
    Session("crruh_RecCnt")=crruh_RecCnt;
    var crswgtRs=Server.CreateObject("ADODB.Recordset");
    sql="SELECT crswgt.cr_wgno,crswgt.cr_wgna FROM crswgt";
    crswgtRs.Open(sql,crwageConn);
    while(!crswgtRs.EOF)
         {
          cr_wgna[crswgt_RecCnt]=String(crswgtRs("cr_wgna"));
          crswgt_RecCnt++;
          crswgtRs.MoveNext();
         }
    crswgt_RecCnt--;     
    crswgtRs.Close();var crdeptRs=Server.CreateObject("ADODB.Recordset");
    sql="SELECT crdept.cr_dpna FROM crdept WHERE SUBSTRING(crdept.cr_dpna,1,2)='生產' AND SUBSTRING(crdept.cr_dpna,4,1)='課'";
    crdeptRs.Open(sql,crwageConn);
    while(!crdeptRs.Eof)
         {
          cr_dpna[crdept_RecCnt]=String(crdeptRs("cr_dpna"));
          crdept_RecCnt++;
          crdeptRs.MoveNext();
         }
    crdept_RecCnt--;
    crdeptRs.Close();我想在BottomFrame將Session("el_no[crruh_RecCnt]")﹑Session("cr_wgna[crswgt_RecCnt]")﹑Session("cr_dpna[crdept_RecCnt]")三個存入Session的數組取出來﹐但Response.Write(Session("el_no[crruh_RecCnt]")的結果都是undefined.請高手支招了﹐急用﹗
    謝謝﹗