web-dev-qa-db-ja.com

[アラート]ページで[OK]をクリックした後にページをリロードする方法

[アラート]ボックスで[OK]ボタンをクリックした後、ページをリロードする必要があります。私はそれのために次のコードを使用しています

alert("Successful Message");
window.location.reload();

ただし、アラートボックスを表示した直後にウィンドウがリロードされます。助けてください

11
Nabeel Arshad

確認をクリックすると、キャンセルをクリックする機会が与えられ、リロードは行われません!

代わりに、次のようなものを使用できます。

if(alert('Alert For your User!')){}
else    window.location.reload(); 

これにより、ユーザーに警告が表示され、ユーザーが[OK]をクリックすると、falseが返され、再読み込みが行われます。 :)また、短いバージョン:

if(!alert('Alert For your User!')){window.location.reload();}

これがお役に立てば幸いです!? :)

41
Bojan Milic

警告の代わりにjavascript confirm()メソッドを使用します。ユーザーが[OK]ボタンをクリックするとtrueが返され、ユーザーが[キャンセル]ボタンをクリックするとfalseが返されます。サンプルコードは次のようになります。

if(confirm('Successful Message')){
    window.location.reload();  
}
8
codeVerine

代わりに確認ボックスを使用してください。..

    var r = confirm("Successful Message!");
    if (r == true){
      window.location.reload();
    }
4
Deepak
alert('Alert For your User!') ? "" : location.reload();

上記のコードをこの形式で書くこともできます。

3
Sobin Sunny

Bojan Milicの回答はある意味では機能しますが、以下のメッセージでエラーになります。

enter image description here

これは避けることができます、

function message() 
{
alert("Successful message");
window.location = 'url_Of_Redirected_Page' // i.e. window.location='default.aspx'
}
2
Denn

Firefoxがrelocate関数の後にJavaScriptのさらなる処理を停止するのは興味深いことです。 Chrome and IEは引き続き他のアラートを表示し、ページをリロードします。試してみてください。

<script type="text/javascript">
    alert('foo');
    window.location.reload(true);
    alert('bar');
    window.location.reload(true);
    alert('foobar');
    window.location.reload(true);
</script>
1
Fiddlestiques

これを試して:

alert("Successful Message");
location.reload();
0
Razen Kellesly

このコードを試してください。

IN PHPコード

echo "<script type='text/javascript'>".
      "alert('Success to add the task to a project.');
       location.reload;".
     "</script>";

Javascriptで

function refresh()
{
    alert("click ok to refresh  page");
    location.reload();
}
0
Siraj Shaikh

私はここで間違っているかもしれませんが、私が誇りに思っているよりも多くの時間を費やした後、すべてのポップアップをブロックするためにchromeを設定し、警告ボックスです。ウィンドウを閉じて、ページをもう一度開きます。

それがうまくいかない場合、すでに与えられたすべての解決策が機能するはずなので、問題はより深いものになるかもしれません。

0
glenn ferns

JavaScriptのアラートメソッドはブール値を返さないか、現在のスレッドを生成しないため、別のメソッドを使用する必要があります。

私の一番の推奨事項は、CSSの経験が少し必要です。代わりに、位置的に固定されたdiv要素を作成する必要があります。

それ以外の場合は、confirm()メソッドを使用できます。

confirm("Successful Message");
window.location.reload();

ただし、これによりキャンセルボタンが追加されます。ただし、確認メソッドはifステートメント内にないため、[キャンセル]ボタンを使用してもページは必要に応じて更新されます。

0
CHess