如何在另一个Ajax调用请求中使用jQuery请求的URL和jQuery?
例如:这是Ajax请求的URL:
这是我使用按钮1 :
的第一个Ajax调用function display_url1() {
jQuery.ajax({
type: 'GET',
url: 'http://www.google.com?action=search',
success: function(msg) {
$('#show_results').html(msg);
}
});
}
使用第二个Ajax请求(使用button2)我想调用此URL:
类似的东西:
function display_url2() {
jQuery.ajax({
type: 'GET',
url: 'THE FIRST URL + &category=sport',
success: function(msg) {
$('#show_results').html(msg);
}
});
}
因此,对于新的Ajax请求,我想将& category = sport 添加到第一个网址。 所以我的问题是如何访问用另一个调用创建的外部变量
答案 0 :(得分: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);
}
});
}
基于编辑的评论...
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);
}
});
}
答案 1 :(得分:0)
假设您正在使用$.ajax()
,则可以使用this.url
回调中的complete
访问该网址,例如:
$('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>
&#13;