`
achun
  • 浏览: 311813 次
  • 性别: Icon_minigender_1
  • 来自: 河南郑州
社区版块
存档分类
最新评论

jQuery ajax 自定义附加数据问题备注

阅读更多

jQuery 有 ajax 的支持,我应用的情况是:需要在ajax请求的对象中附加自己的数据

本来jQuery ajax 方法中要传递的对象都是事先规划好的,每一个参数都有jQuery的操作意义,如果在应用中需要附加自己的参数,当然要命名新的KEY,比如:伪代码

jQuery.ajax({MyData:mydata,其他jqueryajax参数})
 

这里的MyData参数就是自己应用中需要传递的参数对象,且不讨论要传送什么,这个需求有可能有的。

问题:

如果这个MyData的对象是一个复杂的含有循环引用的对象的话,有可能造成与jQuery ajax 方法内部实现的冲突。

因为在jQuery ajax 内部实现中对ajax的参数对象进行了深度的扩展,我们知道javascript的深度扩展实现中要避免循环引用的状况,这种情况会造成死递归循环发生,这一点看jQuery的ajax实现代码就可以知道问题所在:

ajax: function( s ) {
		// Extend the settings, but re-extend 's' so that it can be
		// checked again later (in the test suite, specifically)
		var MyData=s.MyData;//改造后的代码
		if(MyData) delete s.MyData;//改造后的代码
		s = jQuery.extend(true, s, jQuery.extend(true, {}, jQuery.ajaxSettings, s));
		if(MyData) s.MyData=MyData;//改造后的代码
//........省略
}
 

可见如果是循环引用的参数附加到ajax方法中必定造成extend的死循环。通过改造后,可以避免这一状况的发生。

开源就是有这点优势。

备注:

这完全是笔者省事的做法,如有其它更标准的方法请明示

1
0
分享到:
评论

相关推荐

    Jquery Ajax分页(有实例)

    通过以上分析,我们了解到jQuery AJAX分页不仅简化了开发流程,还提供了丰富的自定义可能性。在"JqureySweepPagesDemo"中,你可以看到这些特性的实际应用,为你的Web项目带来高效、美观的分页功能。对于初学者,这个...

    jquery ajax Datatable与json之间数据转换

    jquery ajax Datatable与json之间数据转换jquery ajax Datatable与json之间数据转换jquery ajax Datatable与json之间数据转换jquery ajax Datatable与json之间数据转换jquery ajax Datatable与json之间数据转换...

    asp+jquery ajax实例源码,添加,删除,修改,分页

    - jQuery的AJAX方法允许设置error回调函数来处理请求失败的情况,如网络问题或服务器错误。 - 通过$.ajaxComplete()可以监听所有AJAX请求的完成,无论成功还是失败。 综上所述,这个"asp+jquery ajax实例源码...

    JQuery+AJAX处理XML数据

    **jQuery + AJAX 处理 XML 数据** 在网页开发中,jQuery 和 AJAX 技术的结合是获取和操作服务器端数据的常见方式。本篇将详细探讨如何使用 jQuery 的 AJAX 功能来处理 XML(可扩展标记语言)数据。 **1. jQuery 和...

    Jquery ajax方式读取txt文件、Jquery分页.

    在IT行业中,jQuery是一个...总的来说,jQuery的AJAX功能与分页插件相结合,可以有效地实现动态加载和展示TXT文件内容,以及处理大量数据的分页显示。这些技术在网页开发中非常常见,对于提升用户体验具有重要意义。

    jQuery自定义标签添加删除代码.zip

    此外,可能还会有一些Ajax交互,如果标签数据需要存储在服务器端,那么添加或删除标签后,jQuery可以通过Ajax调用更新服务器上的数据。 在"1404"这个文件中,可能包含了实现这些功能的HTML结构、CSS样式以及核心的...

    jQuery Ajax前后端使用JSON进行交互示例

    本篇文章主要介绍了jQuery Ajax前后端使用JSON进行交互示例,实现前端通过jQuery Ajax传输json到后端,后端接收json,对json进行处理,后端返回一个json给前端,有兴趣的可以了解一下。

    jQuery Ajax过滤器

    总的来说,jQuery的Ajax过滤器提供了强大的灵活性,使我们能够在Ajax请求的各个阶段插入自定义逻辑,包括对数据的预处理和后处理,有效地解决了乱码问题。结合`AjaxForm`插件,我们可以轻松地实现表单的Ajax提交,...

    Jquery ajax json 总结

    JQuery AJAX 和 JSON 是在 Web 开发中处理异步数据传输和数据格式化的重要工具。本文将深入探讨这两个概念以及它们在实际应用中的使用方法。 首先,JQuery 的 AJAX(Asynchronous JavaScript and XML)功能允许...

    传智播客 jQuery ajax 课件

    《jQuery AJAX 技术详解——基于传智播客课件》 在当今的Web开发中,jQuery AJAX(异步JavaScript和XML)技术扮演着至关重要的角色。它允许开发者在不刷新整个页面的情况下与服务器进行数据交换,提高了用户体验,...

    html静态页JQuery ajax示例demo 源码

    HTML静态页面与jQuery AJAX是Web开发中的重要技术组合,它们为网页提供了无刷新的数据交互能力,提升了用户体验。在这个"html静态页JQuery ajax示例demo 源码"中,我们可以深入学习和理解AJAX在C# ASP.NET环境下的...

    在IE8下用JQuery获取自定义标签

    在IE8下使用jQuery获取自定义标签的知识点主要涉及到JavaScript的DOM操作、jQuery的选择器以及对旧版浏览器的兼容性处理。以下是对这些主题的详细解释: 1. **自定义标签**: 自定义标签是HTML5引入的一个新特性,...

    为jQuery添加自定义事件机制

    在JavaScript的世界里,jQuery是一个非常流行的库,它简化了DOM操作、事件处理、动画效果以及Ajax交互等任务。本文将深入探讨如何为jQuery添加自定义事件机制,这将帮助开发者扩展jQuery的功能,实现更加个性化的...

    使用jQuery ajax提交表单代码

    本文将深入探讨如何使用jQuery的ajax方法来提交表单,从而实现异步数据交换,提高用户体验。 首先,jQuery的$.ajax()函数是进行Ajax请求的核心,它允许我们与服务器进行异步数据通信。在“使用jQuery ajax提交表单...

    jquery-ajax-unobtrusive, 在数据 * 属性中,添加到 jQuery Ajax以启用低调选项.zip

    jquery-ajax-unobtrusive, 在数据 * 属性中,添加到 jQuery Ajax以启用低调选项 jQuery低调 AjaxjQuery低调Ajax库补充了 jQuery Ajax方法,添加了对通过Ajax调用指定HTML替换选项的支持,如 HTML5 data-* 元素。...

    Jquery Ajax 动态级联

    在网页开发中,jQuery AJAX 是一个非常重要的技术,它使得前端与后端的数据交互变得更加便捷。本主题将深入探讨如何利用jQuery AJAX实现动态级联效果,即二级联动下拉菜单,这种功能通常用于多级分类选择或者地区...

    jquery ajax demo

    `jQuery AJAX`是jQuery库中的一个核心功能,它极大地简化了原生JavaScript的异步数据通信过程。本教程将深入探讨"jquery ajax demo",通过实际示例展示如何利用jQuery AJAX进行数据的发送和接收。 ### 1. AJAX基础...

    jQuery Ajax自定义分页组件(jquery.loehpagerv1.0)实例详解

    本文将深入讲解一个基于jQuery的Ajax自定义分页组件——jquery.loehpagerv1.0的实例详解。 首先,我们来看一下实现分页功能所需的两个核心JavaScript库: ```html <script src="<%=basePath%>/resources/js/jquery-...

    java程序使用jquery AJAX

    Java程序与jQuery AJAX的结合是Web开发中常见的一种技术组合,用于实现页面的无刷新更新。在本篇文章中,我们将深入探讨如何在Java后端与前端利用jQuery的AJAX功能进行交互,提升用户体验。 首先,jQuery是一个强大...

    jquery Ajax js类库

    3. **custom.js**: 这是自定义的JavaScript文件,很可能包含了使用jQuery AJAX进行数据交互的代码,如向`rate.php`发送POST请求来更新评分。 4. **rate.php**: PHP脚本,处理来自前端的AJAX请求,如接收评分数据并...

Global site tag (gtag.js) - Google Analytics