在AJAX异步请求结束之前更改页面
查看在AJAX异步请求结束之前更改页面,ajax,asp.net-mvc,json,Ajax,Asp.net Mvc,Json,查看 $("#button").click(function () { $('#result').html("Processing..."); $.ajax({ url: '@Url.Action("GetData", "Json")', async: true, dataType: "json", type: "GET", success: function (data) { $('#r
$("#button").click(function () {
$('#result').html("Processing...");
$.ajax({
url: '@Url.Action("GetData", "Json")',
async: true,
dataType: "json",
type: "GET",
success: function (data) {
$('#result').html(data);
},
});
return false;
});
控制器
public class JsonController : AsyncController
{
[HttpGet]
public async Task<JsonResult> GetData()
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("http://localhost:8000/myservice.svc/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = await client.GetAsync("GetData");
var result = await response.Content.ReadAsAsync<JSONResponse>();
return Json(result, JsonRequestBehavior.AllowGet);
}
}
}
我正在从asp.net mvc应用程序异步调用wcf restful服务,并在div中显示结果。
当我点击按钮,服务开始处理,同时我尝试更改页面时,我无法。。。只有在我从服务中得到结果后,页面才会更改
我怎样才能在服务执行时保持更改,并且在服务完成时只在div中显示数据
编辑:更改页面意味着在div下面呈现不同的局部视图。正如我在博客中所描述的
您需要使用为此而设计的技术,例如Signal
class JSONResponse{
public int Value { get; set; }
public string Text { get; set; }
}