asp.net和jquery ajax成功返回多个值
我有一个asp.net页面,其中有一个长时间运行的任务和一个jquery ajax对进度条的调用。在成功时,我想传回一个int来表示进度,但也要传回一些状态文本,比如我在哪个记录上 我知道下面的内容不正确,但如何返回多个值? 获取这两个值的“msg”的正确语法是什么? 我以为是数组或类,但它不起作用asp.net和jquery ajax成功返回多个值,asp.net,jquery,Asp.net,Jquery,我有一个asp.net页面,其中有一个长时间运行的任务和一个jquery ajax对进度条的调用。在成功时,我想传回一个int来表示进度,但也要传回一些状态文本,比如我在哪个记录上 我知道下面的内容不正确,但如何返回多个值? 获取这两个值的“msg”的正确语法是什么? 我以为是数组或类,但它不起作用 function updateProgress() { $.ajax({ type: "POST",
function updateProgress() {
$.ajax({
type: "POST",
url: "Users.aspx/GetProgress",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
success: function(msg) {
$("#result").text = msg.Status;
var value = $("#progressbar").progressbar("option", "value");
if (value < 100) {
$("#progressbar").progressbar("value", msg.Progress);
}
}
});
}
函数updateProgress(){
$.ajax({
类型:“POST”,
url:“Users.aspx/GetProgress”,
数据:“{}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
async:true,
成功:功能(msg){
$(“#结果”).text=msg.Status;
var值=$(“#progressbar”).progressbar(“期权”、“价值”);
如果(值<100){
$(“#progressbar”).progressbar(“value”,msg.Progress);
}
}
});
}
页面应返回Json字符串,例如:
["Progress" : 1, "Status" : "Current Status"]
,则只需将返回的json字符串解析为对象,例如:
async: true,
success: function(msg) {
var obj = jQuery.parseJSON(msg);
$("#result").text = obj.Status;
var value = $("#progressbar").progressbar("option", "value");
if (value < 100) {
$("#progressbar").progressbar("value", obj.Progress);
}
}
async:true,
成功:功能(msg){
var obj=jQuery.parseJSON(msg);
$(“#结果”).text=obj.Status;
var值=$(“#progressbar”).progressbar(“期权”、“价值”);
如果(值<100){
$(“进度条”).progressbar(“价值”,目标进度);
}
}
希望有帮助,
戴夫
仅供参考:为什么不尝试从web服务返回JSON?如果您这样做了,那么您可以传回整个objectscan,您提供了这个示例吗?这是我第一次使用jquery-ajax,这将向您展示如何将返回值序列化为JSON,然后通过前端的Javascript对其进行解析,请看下面Dave Long的答案。