gpt4 book ai didi

jquery - 调用与 jQuery 同步的基于 REST 的服务

转载 作者:行者123 更新时间:2023-12-01 08:03:52 25 4
gpt4 key购买 nike

我习惯于进行 AJAX 调用,但由于这些调用是异步执行的,因此在我的代码中,我不确定该调用是否已经完成。因此,在下面的代码示例中,当我调用alert(url)时,可能是lat和lng变量尚未填充。

因此,我希望我的代码在继续之前等待结果,而不是进行 AJAX 调用,因此是一个同步请求。

我该怎么做?

 var url='';

if ($('select[name="countryselect"]').val() != '0') { url += '&country=' + $('#countryselect option:selected').text(); }

if ($('#<%=tbCity.ClientID%>').val() != '') {
url += '&distance=' + $('#<%=ddlDistance.ClientID%>').val();

$.ajax({
type: "GET",
url: "/service.svc/getlocs/?cid=" + countryid
+ "&c=" + $('#<%=tbCity.ClientID%>').val(),
data: "",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
url += '&lat=' + msg[0].value;
url += '&lng=' + msg[1].value;
}
});


}

alert(url);

最佳答案

您仍然可以使用 ajax,但将之后需要发生的所有事情移至成功处理程序中:

         $.ajax({
type: "GET",
url: "/service.svc/getlocs/?cid=" + countryid
+ "&c=" + $('#<%=tbCity.ClientID%>').val(),
data: "",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
url += '&lat=' + msg[0].value;
url += '&lng=' + msg[1].value;
alert(url);
// more work here
}
});

关于jquery - 调用与 jQuery 同步的基于 REST 的服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17846327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com