jQuery的ajax传参巧用JSON使用示例(附Json插件)

jQuery的ajax调用很方便,传参的时候喜欢用Json的数据格式。比如:

复制代码 代码如下:

function AddComment(content) {

var threadId = $("#span_thread_id").html();

var groupId = $("#span_group_id").html();

var groupType = $("#span_group_type").html();

var title = $("#thread_title").html();

var content = content.replace(/\x22/g,'"');

$.ajax({

url: '/WebService/GroupService.asmx/AddThreadComment',

data: '{threadId:' + threadId + ',groupId:' + groupId + ',groupType:' + groupType + ',title:"' + title + '",content:"' + content + '"}', type: 'post',

dataType: 'json',

contentType: 'application/json;charset=utf-8',

cache: false,

success: function(data) {

//根据返回值data.d判断是不是成功

},

error: function(xhr) {

//中间发生异常,查看xhr.responseText

}

});

}

这中间最麻烦,最容易出错的也是拼接Json字符串,字符型参数的值要添加引号,而且对于用户输入的文本字段要对',/等进行特殊处理

意外的机会,上司给我推荐了一种新的方法,看下面代码:

复制代码 代码如下:

function AddComment(content) {

var comment = {};

comment.threadId = $("#span_thread_id").html();

comment.groupId = $("#span_group_id").html();

comment.groupType = $("#span_group_type").html();

comment.title = $("#thread_title").html();

comment.content = content;

$.ajax({

url: '/WebService/GroupService.asmx/AddThreadComment',

data: $.toJSON(comment),

type: 'post',

dataType: 'json',

contentType: 'application/json;charset=utf-8',

cache: false,

success: function(data) {

//根据返回值data.d处理

},

error: function(xhr) {

//中间发生异常,具体查看xhr.responseText

}

});

}

直接用$.toJSON(对象)即可;

jQuery的JSON插件:http://code.google.com/p/jquery-json/

时间: 2024-09-27 19:49:27

jQuery的ajax传参巧用JSON使用示例(附Json插件)的相关文章

关于strut2+ajax传参问题

问题描述 关于strut2+ajax传参问题 action中: /** * 判断用户是否存在 * @return * @throws Exception */ public String findByName() throws Exception { List userlist = adminService.searchStudent(username); System.out.println(userlist.size()+username); java.util.Map map = new

jQuery通过Ajax向PHP服务端发送请求并返回JSON数据_AJAX相关

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON在前后台交互的过程中发挥着相当出色的作用. 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuery通过Ajax向PHP服务端发送请求并返回JSON数据.阅读本文的读者应该具备jQuery.Ajax.PHP相关知识,并能熟练运用. XHTML <ul id="use

jQuery通过Ajax向PHP服务端发送请求并返回JSON数据

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON在前后台交互的过程中发挥着相当出色的作用. 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuery通过Ajax向PHP服务端发送请求并返回JSON数据.阅读本文的读者应该具备jQuery.Ajax.PHP相关知识,并能熟练运用. XHTML <ul id="use

ajax传参问题-ajax向servlet传参问题

问题描述 ajax向servlet传参问题 在一个ajax中能不能同时出现两种传参方式 我现在试的结果是 直接在url中加一个参数,然后在data:{"data":dataFromAjax}中再加一个参数 在servlet中debug看到 值接收到URL中的参数 这是不是说 在同一个ajax中只能出现一种参数传递方式 且URL传参优先级比较高

jquery bind(click)传参让列表中每行绑定一个事件_jquery

点击列表中某行,弹出详情的需求比较常见.用jquey bind 点击事件时,传参不注意可能会导致点击每一行都是显示相同内容的情况,这大多数是因为传参没注意引起的问题.简易代码如下: for(var i=0;i<2;i++) { $("#b" + i).bind("click", {'bindText':bindText + i}, function(e){ butClick(e); }); } 测试代码: <html> <head> &

js调用Flex中的方法并向flex中传参及flex调用js示例

首先,有了一个swf文件,test.swf,同时也有一个自动生成的html文件,test.html. 然后,在另外一个文件,test.jsp中,通过iframe,引入了test.html,即引入了swf. 现在想要在test.jsp中,向flex传参,并调用flex中的方法,我采用的方法是: 首先,在jsp中写一个调用flex的方法,如下 复制代码 代码如下: function initSWF(){ //得到swf的object var obj = window.frames["rightfra

jQuery的Ajax用户认证和注册技术实例教程(附demo源码)_jquery

前面介绍了<jquery+ajax注册实时验证>及<jQuery使用$.ajax进行即时验证的方法>.这里进一步总结了jQuery的Ajax用户认证和注册技术.分享给大家供大家参考,具体如下: Ajax 表单提交是一个功能强大的技术,提供一种发送 web 表单的方法,无需重载浏览器窗口.jQuery 库让您使用 Ajax 表单提交功能进一步提供一个方便快捷的方法,以少量代码生成可用 Ajax 的 Web 表单.在本文中,学习如何使用 jQuery 创建基础 Ajax 表单提交,以及

js调用Flex中的方法并向flex中传参及flex调用js示例_Flex

首先,有了一个swf文件,test.swf,同时也有一个自动生成的html文件,test.html. 然后,在另外一个文件,test.jsp中,通过iframe,引入了test.html,即引入了swf. 现在想要在test.jsp中,向flex传参,并调用flex中的方法,我采用的方法是: 首先,在jsp中写一个调用flex的方法,如下 复制代码 代码如下: function initSWF(){ //得到swf的object var obj = window.frames["rightfra

ASP调用WebService转化成JSON数据,附json.min.asp_应用技巧

首先定义SOAP数据,然后创建HTTP对象,然后使用POST提交,获取状态码为200,就说明调用成功,再进行下一步操作-- 看一下具体实现的代码吧 <!--#Include virtual="/Include/json.min.asp"--> <% Dim strxml Dim str '定义soap消息 strxml = "<?xml version='1.0' encoding='utf-8'?>" strxml = strxml