2016-11-29 22 views
-1

別のAjax呼び出し要求でjQueryでAjaxリクエストを使用して要求されたURLを使用するにはどうすればよいですか?例えば外部変数へのアクセス(Ajax呼び出し)

:これは、Ajaxは、URLを要求している:(Button2の使用)第二Ajaxリクエスト

function display_url1() { 
jQuery.ajax({ 
type: 'GET', 
url: 'http://www.google.com?action=search', 
success: function(msg) { 
$('#show_results').html(msg); 
} 
}); 
} 

http://www.google.com?action=search

これはボタン1を使用して私の最初のAjaxの呼び出しです私はこのURLに電話したい:

http://www.google.com?action=search&category=sport

そのような

何か:

function display_url2() { 
jQuery.ajax({ 
type: 'GET', 
url: 'THE FIRST URL + &category=sport', 
success: function(msg) { 
$('#show_results').html(msg); 
} 
}); 
} 

だから私は最初のURLに&カテゴリ=スポーツを追加する新しいAjaxリクエストを持ちます。 は、私の質問は、別のコール

+0

それでは、どのように通話を発信していますか? – epascarello

+0

@epascarello更新を参照してください –

+0

あなたは何とか呼び出し間のURLを共有する必要があります...今はそこにアクセスするための関係や方法はありません... – epascarello

答えて

1

変数を持ち、両方の呼び出しで使用します。ような何か:

var url = "http://www.example.com?q=1"; 

function display_url1(){ 
    makeCall(url); 
} 

function display_url2(){ 
    makeCall(url + "&foo=bar"); 
} 


function makeCall(url) { 
    jQuery.ajax({ 
    type: 'GET', 
    url: url, 
    success: function(msg) { 
     $('#show_results').html(msg); 
    } 
    }); 
} 

編集基づいて、n個のコメント...

var url; 
function display_url1(){ 
    url = "http://www.example.com?q=1"; 
    makeCall(url); 
} 

function display_url2(){ 
    makeCall(url + "&foo=bar"); 
} 


function makeCall(url) { 
    jQuery.ajax({ 
    type: 'GET', 
    url: url, 
    success: function(msg) { 
     $('#show_results').html(msg); 
    } 
    }); 
} 
+0

もう一度ありがとうございます。私はあなたが私の質問を理解していないと信じています。最初の呼び出しでvar urlが作成されます。たとえば、url1としましょう。今、私は2番目の呼び出しでこのvarを使いたいと思います。 var url1は実際には2番目の呼び出しの外部変数です。 –

+0

私はあなたから詳細を取得しようとしていました....今、私はそれらを得る....だからあなたはどうにかしてどこかにアクセス可能なURLを格納する必要があります... – epascarello

+0

はい。それが私に必要なもの。何かPHPのセッションのような –

0

あなたが$.ajax()を使用していると仮定して作成した外部変数にアクセスする方法である、あなたは例えば、completeコールバックの内側にthis.urlを使用してURLにアクセスすることができます

$('button').on('click', function() { 
 
    $.ajax({ 
 
    url: 'http://www.google.com?action=search', 
 
    complete : function() { 
 
     var theURL = this.url; 
 
     // Now perform a second one: 
 
     $.ajax({ 
 
      url: theURL+'&category=sport' 
 
     }); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button>Send request</button>

+0

BenM、Ok、ありがとう、もう2回目のAjaxリクエストでtheURLを使う方法は? –

+0

@SunZ 'theURL'変数にアクセスするだけです。 – BenM

+0

編集をご覧ください。 – BenM

関連する問題