1

asp.netアプリケーションにこのコードスニペットがあります

    linkBack.NavigateUrl = "#";
    linkBack.Attributes["onclick"] = "if (BrowserDetect.browser == 'Explorer') {history.go(-1);} else if (BrowserDetect.browser == 'Chrome') {history.go(-1);return false;}";

BrowserDetectは、使用しているブラウザを教えてくれるJSライブラリです。話を戻すと、Chromeでバックリンクをクリックすると、予想どおり、履歴が1レベル戻ります。IEは私を一歩後退させ、次のクリックで私を元の場所に戻し、その後のクリックで同じ2つのページ間を行き来するようにします。誰かが私に何が起こっているのか、そして私がこれを修正する方法を説明できますか?

4

1 に答える 1

3

Because you are doing something different for IE and Chrome? You need to return false from the onclick no matter what. Otherwise the link (#) will be followed

linkBack.Attributes["onclick"] = "history.go(-1);return false;";
于 2013-01-17T01:21:56.850 に答える