前天在使用jQuery作练习时发现的,$.ajax(properties)其中传递参数data的问题.根据文档说是:(Object|String) data - 要发送到服务器的数据。如果还不是一个字符串,就自动轮换为一个查询字符串。即附加到GET请求的url后面的字符串.但是我给data赋值一个json对象数据,然而,它不能转换成"查询字符串".
类似源码:
- # 客户端js部分
-
- var json_data = {"name": "bob", "age": 14};
-
- $.ajax({
- type: "post",
- url : "test.php",
- dataType: "json",
- data: json_data,
- success: function(data){
- alert(data);
- }
-
- });
-
- #服务器端
-
- <?php
- #调试过程
- print_R( $_POST );
- ?>
在调试过程中发现,服务器端获取$_POST就是一个空数组,由此说明json_data在post时并没有转换成字符串.当然,如果在此使用$.post(url, params, callback)其中,params指定为json_data,则完全正常.
于是,我查看了下jquery.js中$.ajax()和$.post()的定义,发现$.post()过程,对params进行jQuery.param(data)加工(json转换成字符串的过程).所以,问题由此解决了,如果想在$.ajax中的data使用json对象,只要先jQuery.param(data)下,就万事OK了!^_^
分享到:
相关推荐
在jQuery的AJAX回调函数中,我们可以处理服务器返回的数据。例如,可以更新DOM元素,展示或隐藏某些元素,或者触发其他操作。 六、异步文件上传 在Asp.Net MVC中,使用jQuery和AJAX进行文件上传需要额外的插件,如...
在进行 Ajax 操作时,通常需要将表单中的数据发送到服务器。jQuery 提供了两种方法来帮助我们完成这一任务: ##### 1. `serialize()` `serialize()` 方法可以将表单元素的数据序列化为 URL 编码的查询字符串,便于...
在Web开发中,jQuery是一个非常流行的JavaScript库,它极大地简化了DOM操作、事件处理以及Ajax交互。本主题聚焦于jQuery中的Ajax功能,特别是如何利用它进行异步用户名验证。Ajax,即Asynchronous JavaScript and ...
**jQuery和Ajax技术详解*...总结,jQuery和Ajax的结合大大提高了Web应用的用户体验,使得网页能够在不刷新的情况下与服务器进行通信。通过学习和实践这些基本的Ajax功能,开发者能够构建出更加动态和响应式的网页应用。
在Web开发中,jQuery是一个非常流行的JavaScript库,它极大地简化了DOM操作、事件处理和Ajax交互。Ajax(Asynchronous JavaScript and XML)技术允许我们在不刷新整个页面的情况下与服务器进行数据交换,极大地提升...
**数据交互**在jQuery的Ajax方法中,可以通过`data`参数传递数据到服务器,可以是JSON、序列化的字符串或者查询字符串。同时,服务器返回的数据会在`success`回调函数中处理,通常以JSON格式接收,便于前端解析和...
AJAX(异步JavaScript和XML)技术在现代Web开发中扮演着关键角色,而jQuery的ajax方法则提供了简洁的API来实现这一功能。 首先,我们来看`bean - json`的转化。在Web服务中,我们经常需要在服务器端处理Java Bean...
jQuery,作为一个强大的JavaScript库,提供了便捷的方式来处理这种问题,特别是通过其Ajax功能进行跨域请求。本示例"Jquery跨域Ajax请求测试"将详细讲解如何利用jQuery实现这一功能。 首先,了解同源策略是理解跨域...
ajax() 方法是 jQuery 中最强大的 AJAX 方法,它可以发送 GET、POST、PUT、DELETE 等多种类型的请求。该方法的语法为 `$.ajax(options)`,其中 `options` 是一个对象,它可以包含多种参数。 常见的参数包括: * url...
1. **错误处理**:确保在AJAX请求中包含错误处理,以应对网络问题或服务器错误。 2. **数据安全**:在发送敏感数据时,如用户密码,应加密或使用HTTPS。 3. **异步响应**:使用回调函数、Promise或async/await处理...
3. **AJAX请求**:`loadPage`函数会发送一个AJAX请求到服务器,获取指定页码的数据。 ```javascript function loadPage(pageNum) { $.ajax({ url: "fetch_data.php", // 服务器接口URL type: "POST", data: { ...
3. **发送数据**:数据可以通过`data`参数发送,例如`data: { 'num1': $('#num1').val(), 'operator': $('#operator').val() }`,将输入框的值传递给服务器。 4. **服务器处理**:在服务器端(如ASP.NET的一般处理...
在“第八章后jQueryAjax的使用”中,我们将深入探讨如何利用jQuery进行AJAX操作。 **AJAX基础** AJAX(Asynchronous JavaScript and XML)是一种创建动态网页的技术,允许在不重新加载整个页面的情况下,与服务器...
在“使用jQuery ajax提交表单代码”的资源中,我们可以期待看到一个清晰的示例,展示如何将表单数据发送到服务器,并处理响应。 1. **jQuery的$.ajax()函数** - **基本语法**:`$.ajax({ options });` - **选项...
在IT行业中,前端开发是构建动态网页应用的关键环节,而jQuery和AJAX是其中不可或缺的工具。本篇文章将深入探讨如何使用jQuery与AJAX技术来实现一个简单的用户名验证功能,以此来确保用户输入的用户名的独特性。这个...
在Web开发中,Ajax(Asynchronous JavaScript and XML)技术允许我们在不刷新整个页面的情况下与服务器进行数据交互,极大地提升了用户体验。jQuery库简化了JavaScript中的Ajax操作,使得开发者能够更方便地实现异步...
**jQuery和Ajax结合使用是Web开发中的常见技术组合,它能帮助开发者实现页面无刷新的数据交互,提升用户体验。Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下更新部分网页内容的技术...
- jQuery的AJAX方法允许设置error回调函数来处理请求失败的情况,如网络问题或服务器错误。 - 通过$.ajaxComplete()可以监听所有AJAX请求的完成,无论成功还是失败。 综上所述,这个"asp+jquery ajax实例源码...
在IT行业中,Ajax(Asynchronous JavaScript and XML)是一种在不刷新整个页面的情况下更新部分网页的技术,极大地提升了用户体验。jQuery是一个轻量级、功能丰富的JavaScript库,它简化了DOM操作、事件处理、动画...
在Web开发中,jQuery的AJAX功能经常被用于与服务器进行异步数据交换,而Struts2作为一款流行的Java Web框架,提供了处理前端请求的能力。本文将深入探讨如何使用jQuery的AJAX方法发送JSON对象数组到Struts2的Action...