0

どうすればこれを可能にできますか? history.go の後にページを自動更新したい。HTML全体を投稿します

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <link rel="stylesheet" type="text/css" href="css/styles.css"/>
    <link rel="shortcut icon" href="img/favicon.png" type="image/png">
    <script src="//cdnjs.cloudflare.com/ajax/libs/json2/20110223/json2.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
    <script src="https://raw.github.com/andris9/jStorage/master/jstorage.js"></script>

    <script>
        $.jStorage.set("reload", true);

        if ($.jStorage.get("reload") === true) {
            $.jStorage.set("reload", false);
            window.location.reload()
        }
    </script>

    <script>
        function goBack(){
            window.history.go(-2);
        }
     </script>



    <title>Edit Success</title>
</head>
<body>
    <div id="container">
    <div id="content">

        <div class="md-modal md-show" id="modal-1">
            <div id="notifMessage">
                <h1>The information have been updated.</h1>
                <p><a onclick='goBack();'>View Patients</a></p>
            </div>
        </div>

    </div>
    </div>
</body>


HTML全体で編集し、投稿したものを置き換えましたが、まだ機能していないか、実装が間違っている可能性があります

4

1 に答える 1

0

このように戻った後にリロードすることはできません。ユーザーが移動した後に来るコードは決して実行されないからです。

代わりに、ページをリロードするように指示する変数をサーバー側またはユーザー ブラウザーに格納する必要があります。そして...そのようなパラメーターが存在する場合にリロードするスクリプトを作成します。

たとえば、jStorageプラグインを使用すると、次のようなことができます

//add jstorage script to your pages, just copy paste this
<script src="//cdnjs.cloudflare.com/ajax/libs/json2/20110223/json2.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script src="https://raw.github.com/andris9/jStorage/master/jstorage.js"></script>

次に、履歴に戻る前に、reload 変数を true に設定します。

$.jStorage.set("reload", true);
//Go back in history

ユーザーが履歴に戻った後、リロード パラメータが存在するかどうかを確認し、存在する場合はリロードを実行します。以下のコードはすべてのページにロードする必要があるため、jstorage スクリプトの後にテンプレートのヘッダーに配置します。

if ($.jStorage.get("reload") === true) {
    $.jStorage.set("reload", false);
    window.location.reload()
}
于 2013-11-10T14:38:23.897 に答える