早上项目使用Ajax中,突然Ajax不生效,打开F12一看,提示XML 解析错误:找不到根元素
百度一番,大多数都说是方法没有返回值,但是我检查自己的是有返回值,因此排除返回值造成的,代码如下:
$.ajax({ type: "POST", async: false, url: '@Href("~/dataStandard/GetParentNodeName")', data: { "parentid": el.PARENTID }, success: function (data_parentName) { $("#tdiv #tb_input").val(data_parentName); }, error: function (data) { return; } });
private string GetParentNodeName() { string parentid = Request["parentid"]; lirObjModel.Boj_SYS_CODE t = new lirObjModel.Boj_SYS_CODE(); using (lirObj.BojModelsVisitor visitor = new lirObj.BojModelsVisitor()) { t = lirObjModel.Boj_SYS_CODE.Find(visitor, int.Parse(parentid)); } return t.Name; }
于是发现自己的后端代码的访问级别是private的,将private改成publict就好了。
造成错误的原因是因为ajax无法访问私有的方法,所以ajax访问方法需要设置为public就可以正常访问。