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

2016-02-19 09:22 19 1 收藏

今天天气好晴朗处处好风光,好天气好开始,图老师又来和大家分享啦。下面给大家推荐使用jquery 的ajax调用总是错误亲测的解决方法,希望大家看完后也有个好心情,快快行动吧!

【 tulaoshi.com - Web开发 】

使用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)
{
ListTestC t=new ListTestC ();
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有很严格的验证机制,看来这个一定要注意,否则就会错误

来源:http://www.tulaoshi.com/n/20160219/1590540.html

延伸阅读
标签: Web开发
用jQuery调用其他项目的WebService 实现登录验证功能 html输入用户名密码: 代码 代码如下: table tr td Login ID: /td td input type="text" value="" / /td /tr tr td Login Password: /td td input type="password" value="" / /td /tr tr td input value="Sign in" readonly / /td td input value="Sign up" ...
标签: ASP
[错误信息] Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet database engine cannot open the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view its data. [原因] 这个错误发生在IIS使用匿名帐号(通常是...
标签: Web开发
1. "object expected"错误: 是jquery库的引用方式不对引起的。 错误的引用方式: script src="/js/jquery-1.3.2.min.js" type="text/javascript" /script 正确的引用方式: script language="javascript" type="text/javascript" src="../js/jquery-1.3.2.js" /script 另外包含js脚本的语法写法如下(书写不标准也会报错"object expected"):...
标签: Web开发
如下代码: 代码如下: jQuery.noConflict(); jQuery(document).ready(function(){ //Your Code.... }); jQuery.noConflict() 的详细介绍: 概述 运行这个函数将变量$的控制权让渡给第一个实现它的那个库,这有助于确保jQuery不会与其他库的$对象发生冲突,在运行这个函数后,就只能使用jQuery变量访问jQuery对象。例如,在要用...
标签: 电脑入门
Lubuntu是一款Ubuntu轻量级桌面环境,拥有体积小、运行快,占用资源少的特点,Docky是Linux系统下的轻量级应用启动器,不少朋友在使用的时候会报混合错误,下面图老师小编就给大家介绍下Lubuntu使用Docky时提示混合错误的解决方法,一起来学习下吧。 如果你使用LXDE发行版,你也许肯定遇到过使用Docky时报混合的错误。看下面的截图。 如果...

经验教程

766

收藏

19
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部