本人遇到的问题 :
用getJSON 异步调用数据,返回json 数据集合,数据是反回了 但是 没有执行回调函数


正确后的代码:
js文件
//获取列表
function getlist() {
var topID = $("#articleid").val();
//var params = "topicID=" + topID;

$.getJSON("http://news." + domian + "/AjaxList.ashx?topicID="+topID+"&format=json&jsoncallback=?", function (data) {
$("#commentlist").html(data.contentlist);

});
}

一般处理文件
<%@ WebHandler Language="C#" Class="AjaxList" %>

using System;
using System.Web;
using LitJson;
using UCenter.Logic.Members;
using WCms.Entity.Common;
using WCms.Logic.Common;
using Qyn.Studio.Extend;
using Qyn.Studio.Utils;
/// <summary>
/// 获取电子优惠卷
/// </summary>
public class AjaxList : IHttpHandler
{

public void Proce***equest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.AddHeader("P3P", "CP=CAO PSA OUR");

var data = new JsonData();
var contentlist = new StringPlus();
//var ID=UserLogic.GetCookies().ID;
//var userinfo = UserLogic.Data.Where(t => t.ID == ID.GetValueOrDefault()).ToInfo();
var jsoncallback = QynRequest.QS("jsoncallback");
var cTopicID = QynRequest.QS("topicID").ConvertType(0);

if (cTopicID > 0)
{
var list = WCms.Logic.Common.CommentLogic.Data.Where(t => t.TopicID == cTopicID.ConvertType(0)).Selector(t => new { t.Contents, t.CreateAt, t.CreateName })
.Desc(t => t.CreateAt).ToList(5);

contentlist.AppendLine("<div class=\"reading\">");
contentlist.AppendLine("<h4><span>网友评论</span></h4>");
contentlist.AppendLine("<div class=\"Comment\">");
foreach (var item in list)
{
contentlist.AppendLine(string.Format("<dl><dt><img src=\"/content/imges/small.jpg\" alt=\"{0}\"/></dt>", item.CreateName));
contentlist.AppendLine(string.Format("<dd><p><i>{0}:</i>{1}</p>", item.CreateName, item.Contents));
contentlist.AppendLine(string.Format("<p><span>时间:{0}</span></p>", item.CreateAt.ToShortString("yyyy-MM-dd hh:mm")));
contentlist.AppendLine("</dd></dl>");
}
contentlist.AppendLine("</div></div>");
data["contentlist"] = contentlist.Value;
}
context.Response.Write(jsoncallback + "(" + data.ToJson() + ")");
}

public bool IsReusable
{
get
{
return false;
}
}

}







划红线的部分是重点需要注意的事情

注:format=json 可以不加
jsoncallback 也可以换成 callback
不过一般处理文件里面 也必须要和 js文件里的 jsoncallback 或着 callback 一致。


以上就是这个问题的解决办法 ,如有问题请留言