0

ユーザーがボタンをクリックすると、window.location を変更してユーザーを別の Web ページに移動させ、バックグラウンドで HTTP Post 要求を作成します。HTTP Post は非同期である必要があります。どうやってやるの?

 $(document).ready(function(){
      $("#b1").click(function(event){


        try{

             //call function that sends HTTP POST in the background
             window.location="http://www.stackoverflow.com";

        } catch(e) {


          alert(e.message);

         }
      });
    });
4

1 に答える 1

2

非同期ポスト リクエストを実行する新しいブラウザ ウィンドウ/タブを開き、応答を受信すると自動的に閉じることができます。同時に、独自のウィンドウの場所を変更することもできます。

$(function() {
  $('button').on('click', function() {
    var w = window.open('about:blank');
    w.document.write([
      '<html>',
        '<body>',
          '<script src="http://code.jquery.com/jquery-latest.js"></script>',
          '<script>',
            '$.post("http://my.site.com", "data to be sent").always(function() {',
              'window.close();',
            '})',
          '</script>',
        '</body>',
      '</html>'
    ].join(''));
    window.location = 'http://stackoverflow.com';
  });  
});
于 2013-11-06T22:20:07.100 に答える