success: function (msg) { //调用msg msg是数组 }
情况是这样的,我用Ajax做了个判断,后台返回的结果是数组,请问我在Ajax里面如何调用这个数组,不会求指教
调用来干嘛?数组就是当数组用呗。
是这样的 我从后台返回的值是字符串数组,也就是对应的msg是数组 但是我不知道如何调用,msg[0]这种不幸,网上查了eval也不行,请问我如何调用?
@Coderwhl: 你应该是返回的字符串。你可以使用var msgArr = $.parseJSON(msg);,然后用msgArr[0]
@幻天芒: 经过实际测试不行,提示 “无效字符”
@Coderwhl: 建议你贴完整ajax代码,而且把msg贴出来,包括数据类型。
@幻天芒:
var strMsg= new Array(); var mrURL = encodeURI('@Url.Action("Vality", "Mat")?id=@Model.MatPreID'); $.ajax({ type: "post", url: mrURL, async: false, success: function (msg) { if (msg != "") { alert(msg); strMsg = msg; var msgArr = $.parseJSON(msg); alert(msgArr[0]); } } });
后台:
public string[] ValityMaterial(int id) { //code }
后台返回的数组绝对没问题,但是运行会爆 ”无效字符“的错
@Coderwhl: 要返回jsonString才可以哇。。
public string ValityMaterial(int id) { string[] results = xxx(); return Json(results); //将对象转换为Json String。方法虚构的哈。 }
报错,是因为你的格式不满足json要求,导致转换失败、
你可以认为msg就是一个object[].
是这样的 我从后台返回的值是字符串数组,也就是对应的msg是数组 但是我不知道如何调用,msg[0]这种不幸,网上查了eval也不行,请问我如何调用?