2016-12-07 9 views
6

ajax呼び出しが成功すると、ページをリロードする必要があります。location.hrefまたはwindow.location.reload(true)を使用してページをリロードする

私は(ない鉱山)いくつかのコードを見ていると、2つの方法があります:

success : function(obj) { 
//code 
     location.href = location.href; 
    } 

または

success : function(obj) { 
//code 
     window.location.reload(true); 
    } 

は動作に違いはありますか?私は両方の場所とwindow.locationの違いを知っているが、仕事の面では?

+3

[window.location.href = window.location.reload()の相違点]の可能な複製(http://stackoverflow.com/questions/2405117/difference-between-window-location- href-window-location-href-and-window-location) –

+2

'window.location.reload(true);'は、キャッシュからではなくサーバからページをリロードします。 'window.location.reload();'は'location.href = location.href;と同じことをします。ただし、' window.location.reload() 'には投稿が含まれています。 –

答えて

8

主な違いは従ってある:window.location.href = 'あなたのURLが' POSTデータが含まれていませんが

window.location.reloadは()、POSTデータで現在のページを再読み込みします。

さらに、window.location.reload(true)メソッドは、サーバーからページをリロードします。ブラウザはキャッシュをスキップします。

たとえば、私はあなたがAJAXリクエストからsuccess機能を使用しているのを見ています。

は、あなたがフォローの方法があるとします。

[OutputCache(Duration=600)] 
public ActionResult Homepage(){ 
    //code here 
    return View(); 
} 

あなたが10分を意味600秒間window.location.href="location_URL"、その後、ブラウザのキャッシュデータを使用している場合。

一方、window.location.reload(true)を使用すると、ブラウザはキャッシュをスキップし、サーバーからページをリロードします。

+0

よろしくお願いいたします。それが私が必要とする、サーバーからリロードするためです。 – pmirnd

関連する問題