2012-05-18 2 views
5

OK、これは可能ですが、私はとにかく頼むと思います:)JavaScriptを使用は、バックグラウンドでのPHPの呼び出しを行うためのダイアログを確認

を私はいくつかの情報とリンクを含むHTMLページを持っていると思った場合は本当にわかりません。 リンクはJavaScriptの確認ダイアログボックスを呼び出します。 ユーザが「OK」を選択した場合、PHPファイル内の関数を呼び出したいが、バックグラウンドでは、ページ、リロードなどを変更したくない。

これは可能ですか?

おかげ

T

答えて

6

使用AJAX。以下はjQueryのを使用しています。詳細については

if(confirm('Are you sure?')) { 
    $.ajax({ 
     url: '/path/to/file.php', 
     data: 'url=encoded&query=string', // Can also be an object 
     success: function(output) { 
      // This function is called after the PHP file completes. 
      // The variable passed in is a string containing all output of 
      // your PHP script (i.e. echo/print) 
     } 
    }); 
} 

AJAXのためのjQueryのドキュメントをチェックしてください。 jQueryを使用できない場合は、ネイティブJavaScriptを使用してAJAXリクエストを作成することには多くのものがあります(tutorials)。

大量のデータをPHPから成功関数に返す場合は、PHPのデータをJSON encoded arrayとして返すことができます。これは、クライアントサイドでJavaScriptオブジェクトに安全にparsedすることができます。

3
$('.LinkClass').click(function(){ 

    if(confirm('Is it OK?')) { 

    $.ajax({ 
     url: 'action.php', 
     type: 'POST', 
     data: 'data=value', // Can also be an object 
     success: function(data) { 
      // Do Nothing 
     }, 
     error: function(){ 
      alert('Error'); 
     } 
    }); 

    } 

}); 
関連する問題