45

私が使用しているすべてを完全にリロードせずにページをリロードするには:

window.top.location=window.top.location;

ただし、アンカーテキストがある場合、これは何らかの理由で機能しません。この場合、何もしないように見えますが、アンカーを更新する可能性が高くなります。

キャッシュされた画像とスクリプトをリロードせずにページをリロードする(上記のように)これに対する修正はありますか?

4

5 に答える 5

75

を使ってみてくださいlocation.reload(false)

MDN が言うように、2 番目のパラメータはキャッシュをバイパスするかどうかを示すブール値です。false必要に応じてキャッシュを使用し続けます。

于 2013-04-27T03:25:06.073 に答える
0

私は次の状況でこれらすべてを試してきました: 私は顧客が製品のリストでプロジェクトを保存できるミニカートのある複雑なページを持っています. ここで、アコーディオンなどを開いて親ページをそのまま維持しながら、顧客が新しいページを開いてレポートをダウンロードできるようにしたいと考えました。

XP を実行している IE8 を使用しているお客様は、レポート ウィンドウを開いた後、親ページが文字化けしていました。プログラミングは、VB コード ビハインドを使用した ASP.NET で行われました。このソリューションは私にとってはうまくいきました。

Dim proj As String = "<script language=javascript> location.assign('/Projects.aspx');
window.open('Report.aspx?project=" & projid.Text & "&rpt=bill');</script>"
Session.Add("AddCart", idx.ToString("N0"))
Response.Write(proj)

location.assign は親ページを更新するために使用され、window.open はレポートを新しいウィンドウで開きます。

セッション変数は、どのアコーディオン行を開く必要があるかを追跡するために使用されます。これは Page_Load で処理されます

    If Not Page.IsPostBack Then
        LoadProjects()
        If Session("AddCart") IsNot Nothing Then
            Dim idx As Integer = Session("AddCart")
            ProjAccordion.SelectedIndex = idx
            Session.Remove("AddCart")
        ElseIf Session("CopyProj") IsNot Nothing Then
            Dim idx As Integer = Session("CopyProj")
            ProjAccordion.SelectedIndex = idx
            Session.Remove("CopyProj")
        End If
    End If
于 2014-07-25T14:31:54.563 に答える
-2

location.href を使用すると、トリック http://www.w3schools.com/jsref/prop_loc_href.aspになります

于 2013-04-27T05:27:25.900 に答える