`
senvon
  • 浏览: 37304 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

jquery版本升级引发的问题和解决方法

阅读更多

以前写的jquery组件,jquery使用的1.3.2版本,算是一个稳定版了

 

听说jquery新版本对性能控制更加完善,也增加许多新功能,看的我浑身发热,欲罢不能。。。。。。。。。

果断决定把那个老迈的1.3.2升级成1.6.2

 

jquery版本切换之后,发现悲剧了

以前的jquery组件不能用了

深入调试后发现,主要是POST请求没有执行成功,每次调试到post的时候,程序就过去了

 

我就奇怪了,jquery升级以后也有post方法啊,怎么就执行不过去呢

js调试也是烦躁的一塌糊涂,几次下来我就被激怒了,小宇宙轻轻的爆发了一下。。。。

 

进入1.6以后,发现jquery1.6的ajax的调用架构完全换了(哈哈,新发现)

几经周折,发现了一个新api,parseJSON

if ( typeof data !== "string" || !data ) {
			return null;
		}

		// Make sure leading/trailing whitespace is removed (IE can't handle it)
		data = jQuery.trim( data );

		// Attempt to parse using the native JSON parser first
		if ( window.JSON && window.JSON.parse ) {
			return window.JSON.parse( data );
		}

		// Make sure the incoming data is actual JSON
		// Logic borrowed from http://json.org/json2.js
		if ( rvalidchars.test( data.replace( rvalidescape, "@" )
			.replace( rvalidtokens, "]" )
			.replace( rvalidbraces, "")) ) {

			return (new Function( "return " + data ))();

		}

 发现每次程序都是从window.JSON里面进去。。。。。

那死东西是啥啊,我咋没见过啊,看jquery上面的注释是说,调用浏览器本地的json解析器

哟,牛逼了么,看来以后写json的时候,可以调用这个呀。。。。。

 

没办法,google发现,浏览器本地JSON解析器对json的格式要求很严格

举个例子来说,{aa:123,bb:123}这个json,在浏览器本地的解析器里面是不能通过的,一定要写成{“aa”:123,“bb”:123}

 

原来是我自己偷懒,没把json拼接写好

修改部分java代码以后,程序顺利运行,jquery升级成功

分享到:
评论

相关推荐

    jquery-migrate3.4版本

    这一步骤对于大型项目尤其重要,因为它可以避免因升级引发的大量未知问题。 总之,jQuery Migrate 3.4.0版本是一个宝贵的工具,它帮助开发者应对jQuery升级带来的挑战,确保代码的兼容性和稳定性。通过合理利用这个...

    不同Jquery版本引发的问题解决

    对于一些长期维护的项目,使用稳定版本的JQuery,并在项目文档中明确指出所依赖的JQuery版本号,可以帮助团队成员和维护者避免兼容性问题。 总之,在使用JQuery这类成熟的JavaScript库时,开发者需要关注版本的差异...

    jquery3.6.0

    这使得开发者可以放心升级,而不必担心引发的兼容性问题。在这一版本中,jQuery团队对API进行了细致的审查,修复了已知的漏洞,并优化了一些性能瓶颈,提升了整体的稳定性和效率。 在DOM操作方面,jQuery 3.6.0增强...

    jquery.mobile所需库文件

    2. **升级或降级**:如果发现现有jQuery版本与jQuery Mobile不兼容,可以选择升级或降级其中一个库,使其达到兼容状态。 3. **使用CDN**:为了方便,许多开发者选择使用内容分发网络(CDN)来加载库文件。CDN通常会...

    jquery-migrate

    3. **向后兼容**:对于那些不能立即升级到最新jQuery版本的大型项目,jQuery Migrate提供了一种向后兼容的解决方案,使得项目可以在更新jQuery的同时保持稳定运行。 **关于 zTree 的升级** zTree 是一个基于jQuery...

    【VS2013控件补丁】jquery-1.7_jb51

    总的来说,"【VS2013控件补丁】jquery-1.7_jb51"是一个专门针对VS2013开发环境中的jQuery 1.7版本的修复方案,它可以帮助开发者解决因jQuery版本不兼容而引发的错误,确保C# ASP.NET项目的正常运行。在实际开发中,...

    jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法

    在使用jQuery库时,开发人员可能会遇到一个特定的错误:“Cannot read property 'msie' of undefined”。...在处理完相关问题后,建议阅读jQuery官方文档,以了解最佳实践,并保持对新版本特性的持续关注和学习。

    JQuery 1.3.2以上版本中出现pareseerror错误的解决方法

    这个经历表明,对JavaScript库的版本升级要非常小心,尤其需要注意库更新可能带来的功能变更和兼容性问题。 从技术角度分析,"parseerror"通常发生在浏览器尝试解析JSON数据时。如果JSON的格式不正确,例如使用了...

    IE8 jquery ajax获取静态资源报错TypeError 拒绝访问

    2. **请求方法不支持**:XDomainRequest仅支持GET和POST请求,如果你尝试使用PUT或DELETE等其他HTTP方法,可能会引发错误。 3. **头部限制**:XDomainRequest不允许设置自定义请求头,只能接受Content-Type(必须是...

    jQuery Validation插件remote验证方式的Bug解决

    但是,修改库的源码并不是最佳实践,因为它可能会在升级版本时引发更多的问题。因此,更合适的解决方案是在不改变库的情况下,通过自定义方法来覆盖默认的行为。 可以通过扩展jQuery Validation插件的方法来实现这...

    redmine_jquery_migrate:是redmine的一个插件,用于恢复jquery 1.9中过时的API

    总之,`redmine_jquery_migrate`是Redmine管理员和开发者的重要工具,它可以帮助平稳地进行jQuery版本升级,并解决由此带来的兼容性挑战。通过理解其工作原理和正确使用,你可以确保你的Redmine实例始终保持最佳状态...

    javascript在myeclipse中报错的解决方法

    在某些情况下,可能需要更新jQuery版本以适应更现代的JavaScript规范,或者调整代码以消除实际的错误。此外,如果频繁遇到类似问题,考虑升级MyEclipse到最新版本,因为新版本通常会提供更好的对各种JavaScript库的...

    ie6下position:absolute不显示问题解决方法

    4. **更新浏览器或使用兼容性库**: 鼓励用户升级到更现代的浏览器,或者使用像`Conditional Comments`或`jQuery`这样的库来解决IE6的兼容性问题。 总之,解决IE6下的`position: absolute`不显示问题需要开发者对IE6...

    ckeditor在ecshop中替换原富文本编辑器

    解决这个问题,首先需要确保CKEditor和ECShop的jQuery版本一致且兼容。可以考虑将ECShop全局的jQuery库替换为CKEditor所依赖的版本,或者通过`noConflict`模式隔离两个库的使用。对于transport.js中的冲突,可能需要...

    .net下用的一个日历控件,带时分秒

    - **升级浏览器**:鼓励用户升级到较新版本的浏览器,以获得更好的兼容性和安全性。 - **回退兼容模式**:在ASP.NET中,可以设置页面指令`<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">`,使IE7...

    ajaxFileUpload重复提交,出现参数 is not params现象

    可以考虑升级到最新版本,或者寻找其他替代方案,如使用HTML5的`FormData`和`XMLHttpRequest Level 2`特性来实现更现代的文件上传功能。 综上所述,解决“ajaxFileUpload重复提交,出现参数is not params现象”的...

    IE6-IE9使用JSON、table[removed]所引发的问题

    在IE6至IE9版本的浏览器中,开发者在处理JSON数据和HTML元素的innerHTML属性时会遇到特定的问题。由于这些浏览器的老旧版本,它们在实现现代Web标准方面存在一些缺陷,导致在使用这些功能时可能会遇到兼容性问题。 ...

    仿discuz论坛里图片点击放大图片,可移动 等功能 完美可用版

    此插件解决了这个问题,当用户点击图片后,图片会以全屏或弹出窗口的形式显示,让用户能够看清图片的每个细节。 其次,这个插件还支持图片的移动功能。这意味着用户在查看放大后的图片时,可以通过鼠标或触屏手势...

    神思100型web控件

    这意味着它可能已经经历了多次迭代和改进,提供了更多的功能和修复了已知问题。 4. **集成与使用** 使用神思100型Web控件时,开发者需要将其正确地集成到Web应用程序中,可能涉及注册控件、在网页中引用控件以及...

    django-bootstrap-static:静态静态内容包装在pip可安装django软件包中

    - **一致性**:所有项目都使用统一的Bootstrap版本,避免因版本不一致引发的问题。 - **节省时间**:快速启动新的Django项目,无需花费时间配置静态文件。 - **减少错误**:减少了手动操作静态文件时可能出现的错误...

Global site tag (gtag.js) - Google Analytics