0

ほとんどが vbscript/asp であるサイトを継承しました。1 つのページは、DOCTYPE HTML PUBLIC... 行の前に <% vbscript %> があり、ページが開く前に実行されます。ユーザーが別のページの戻るボタンを押してそこにたどり着いたとしても、これを実行する必要があります。おそらくそれをオンロード関数に配置することによって-それは正しいですか?

これは <% %> コードの一部を短縮したものです:

<%
if not (IsEmpty(Session("MM_Username"))) then
    Set checkSet = Server.CreateObject("ADODB.Recordset")
        checkSet.ActiveConnection = MM_CA_STRING
        checkSet.Source = "SELECT * FROM cpgdb.dbo_tbl_printing_tempstore WHERE username = '" & Session("MM_username") & "' AND addedtocart = 'NO'"
        checkSet.Open()

end if
%>
<!DOCTYPE HTML PUBLIC...
...
<body>

次のように実行する必要があると思います。

<!DOCTYPE HTML PUBLIC...
...
<body onload="runcode()">

Function runcode()
    if not (IsEmpty(Session("MM_Username"))) then
        Set checkSet = Server.CreateObject("ADODB.Recordset")
        checkSet.ActiveConnection = MM_CA_STRING
        checkSet.Source = "SELECT * FROM cpgdb.dbo_tbl_printing_tempstore WHERE username = '" & Session("MM_username") & "' AND addedtocart = 'NO'"
        checkSet.Open()

    end if
End Function

<% コード %> をコピーして関数 - 終了関数の間に貼り付けるだけで、このコードを関数に移動しようとしました。これは機能しません - 構文が間違っているようです。誰かがそれを機能させるために必要な理由と調整、および onload イベントが必要なことを行うかどうかを教えてもらえますか?

どんな助けでも感謝します。

4

1 に答える 1

0

残念ながら、あなたが求めていることはVBScript/ASPでは不可能です。VBScript / ASPはサーバー側のプログラミング言語であり、これを使用してクライアント側の動作を誘導しようとしています。このようなことをしたい場合は、Javascriptで行うか、「メタリフレッシュ」の値を設定する必要があります。

<meta http-equiv="cache-control" content="no-cache"> <!-- tells browser not to cache -->

<meta http-equiv="expires" content="0"> <!-- says that the cache expires 'now' -->

<meta http-equiv="pragma" content="no-cache"> <!-- says not to use cached stuff, if there is any -->
于 2012-02-11T19:12:31.527 に答える