0

現在、このキャンセルボタンがあります。ユーザーがクリックすると、前のページに移動します。保存せずにページに変更を加えてから[キャンセル]をクリックすると、変更を保存せずにページを終了するかどうかを尋ねるウィンドウがポップアップ表示されます。[はい、ページを離れる]をクリックすると、メッセージが再度表示され、もう一度[はい]をクリックする必要があります。したがって、同じメッセージで、なぜこれが発生しているのか、前のページに戻るためのより良い方法があるのか​​どうかが2回わかりません。

これがキャンセルボタンの私のコードです:

<a href="javascript:goBack(); " class="glossyBtn">
 <img alt="" style="vertical-align: middle" src="<%:Url.Content("~/Content/blueprint/plugins/buttons/icons/cross.png")%>" />
    <span style="vertical-align: middle">Cancel</span>
</a>


<script type="text/javascript">
    function goBack() {
        window.history.back();
    }
</script>

また、ユーザーがページ上にいて変更を加えて保存した場合、同じページに保存された情報が再読み込みされますが、ユーザーが[キャンセル]をクリックすると、読み込み前に同じページに戻り、[キャンセル]をクリックしてすべてを取得する必要があります。ページから抜け出します。これを処理するより良い方法はありますか?

4

2 に答える 2

3

window.history.back();期待どおりに動作しません。前のページにリダイレクトしたい場合は、window.location

 function goBack() {
        window.location = 'YOUR URL'; //specify the url to redirect
 }

あなたのコメントに更新:

はい、引数を関数に渡すだけです。

function goBack(url) {
       window.location = url; //specify the url to redirect
}

あなたの<a>タグでは、次のように関数を呼び出します。

<a href="javascript:goBack('http://www.stackoverflow.com'); " class="glossyBtn">
于 2012-10-04T03:37:33.817 に答える
0

history.back()ブラウザーの履歴が手動で消去された場合は機能しないため、window.location.href を使用してください。

于 2012-10-04T03:42:24.960 に答える