加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

使用jquery 的ajax调用总是错误亲测的解决方法

发布时间:2020-12-14 22:40:12 所属栏目:资源 来源:网络整理
导读:使用jquery 的ajax功能调用一个页面,却发现总是出现错误。 js代码如下 复制代码 代码如下: $.ajax({ type: 'post', url: 'TestData.aspx', data: { language_type: 'cn'}, dataType: 'json', success: function (data) { alert('ok'); }, error: function (d
使用jquery 的ajax功能调用一个页面,却发现总是出现错误。
js代码如下
复制代码 代码如下:

$.ajax({
type: 'post',
url: 'TestData.aspx',
data: {
language_type: 'cn'},
dataType: 'json',
success: function (data) {
alert('ok');
},
error: function (data) {
alert('err');
});
}

TestData.aspx代码如下,省略了后边一些代码
复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TestData.aspx.cs" Inherits="Demand_TestData" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

TestData.aspx.cs代码如下
复制代码 代码如下:

public partial class Demand_TestData : System.Web.UI.Page
{
protected void Page_Load(object sender,EventArgs e)
{
List<TestC> t=new List<TestC> ();
for (int i = 0; i < 10; i++)
{
TestC c = new TestC();
c.RD_ID = i;
t.Add(c);
}
string test = JsonConvert.SerializeObject(t);
Response.ContentType = "application/Json";
Response.Write(test);
Response.Clear();
}
}
public class TestC
{
public int RD_ID
}

可就是这么短短几行代码,jquery总是报错,如果把 dataType: 'json',修改为其他类型就不会错了,很奇怪,可我的系统里,需要的是'json对象
最后经过反复测试才发现修改了如下地方的代码后终于正常了
1去掉TestData.aspx.cs页面中的Response.Clear();具体什么原因不清楚
2修改类TestC为如下形式,也就是给字段添加了读取设置属性
复制代码 代码如下:

public class TestC
{
private int rD_ID;
public int RD_ID
{
get { return rD_ID; }
set { rD_ID = value; }
}
}

3删除TestData.aspx页面中的所有代码,只保留第一行,修改后的代码如下
复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TestData.aspx.cs" Inherits="Demand_TestData" %>

经过这么多测试终于正常了
我发现使用jquery的ajax的经常回跳入错误的处理流程,尤其是 dataType: 'json',看来jquery有很严格的验证机制,看来这个一定要注意,否则就会错误

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读