ajax请求后台返回数据data不能遍历

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_39492545/article/details/78137805

今天在做ajax请求后台,在后台用了JSON.toString()运行了JSON对象的转换,但是到了前台遍历的时候$(data).each(function(i,obj){

})不执行报错

后来百度一下错误是

在写前端的时候用jquery来遍历后台传来的json数组时候遇到这个错误:Uncaught TypeError: Cannot use 'in' operator to search for。后来查到原因是因为:一部分浏览器后端传过来的是json对象,但是我们前端是需要Javascript的对象,所以需要做个转换JSON.parse() or jQuery $.parseJSON


然后用

var newdata=JSON.parse(data);


再遍历就ok了。希望能够给大家一些帮助。

展开阅读全文

ajax请求后台没有返回需要的信息

11-25

1.JS代码:rnfunction JudgeHasCommunity() rnrn var value = $("#" + '<%=TextBox5.ClientID%>').val();rn var data = encodeURI(value) ;rn var reg=/^[\u0391-\uFFE5]+$/;rn if (!reg.test(value)) rn alert("必须为中文字符");rn return false;rn rn else rn $.ajax(rn type: "GET",rn url: "CheckCommunity.aspx",rn contentType: "application/json; charset=utf-8",rn dataType: "jsonp",rn data: "cName=" + data,rn beforeSend: function (XMLHttpRequest) rn $("#" + '<%=showResult2.ClientID%>').text("正在查询");rn //Pause(this, 100000);rn ,rn success: function (msg) rn $("#" + '<%=showResult2.ClientID%>').html(msg);rn $("#" + '<%=showResult2.ClientID%>').css("color", "red");rn ,rn complete: function (XMLHttpRequest, textStatus) rn //隐藏正在查询图片rn ,rn error: function () rn //错误处理rn rn );rn rn rn rnrnrn2.页面控件:rn rn 您所在的社区:rn rn rn rn rn rn rn3.CheckCommunity.aspx.cs:rnpublic partial class CheckCommunity : System.Web.UI.Pagernrn protected void Page_Load(object sender, EventArgs e)rn rn string cName = Request["cName"].ToString();rn rn List lt = CommunityManager.GetCommunityBycName(cName);rn if (lt != null)rn rn Response.Write("您可以使用此社区名!");rn rn elsern rn Response.Write("社区名不存在!");rn rnrn rnrnrn[color=#FF0000]问题:在CheckCommunity.aspx.cs的Page_Load处设置完断点,然后在文本框中输入社区名称,是数据库中有的社区名称,而且在调试的时候也能得到list记录 是不为空的,照理应该是返回"您可以使用此社区名!"这个msg 然后在showResult2处显示,现在只显示“正在查询”,没有显示结果,为什么,小弟菜鸟一个。。。。请高手帮忙解答[/color] 论坛

没有更多推荐了,返回首页