jquery的ajax调用

问题描述

functionGetStudentsPost(roleId){try{alert(roleId);$.post("/Role/GetStudentsOfRole","{roleId:"+roleId+"}",function(data){alert(data);},"json");}catch(ex){alert(ex);}}这个函数调用时,$.post方法不走,前面alert执行了,异常捕获里也没有执行,控制器中GetStudentsOfRole方法没有调用,mvc视图中引用了<scriptsrc="@Url.Content("~/Scripts/jquery-1.4.4.js")"type="text/javascript"></script>,不知道什么原因,哪位大神指导一下!

解决方案

解决方案二:
用FF的httpfox来看看
解决方案三:
$.post("/Role/GetStudentsOfRole",{roleId:roleId},function(data){alert(data);},"json");
解决方案四:
$.post("/Role/GetStudentsOfRole",{RoleId:roleId},//参数错误function(data){success(data);},"json");$.ajax({url:"/Role/GetStudentsOfRole",data:{RoleId:roleId},dataType:"json",type:"post",cache:false,success:function(result){}});

解决方案五:
引用3楼shengguang1587的回复:

$.post("/Role/GetStudentsOfRole",{RoleId:roleId},//参数错误function(data){success(data);},"json");$.ajax({url:"/Role/GetStudentsOfRole",data:{RoleId:roleId},dataType:"json",type:"post",cache:false,success:function(result){}});

$.post方式按照你写的调用没问题了,但是$.ajax按照你写的data:{roleId:roleId},确不行,如果是data:"{roleId:"+roleId+"}",这样调用没问题,这是什么原因呢?一个字符串,组成的json格式,对jquery的ajax调用不是和熟悉,最近在学习。
解决方案六:
data:"{roleId:"+roleId+"}",以后调用不要这样来写有歧义你括号包起来代表他是键值所以我上面给你写的是data:{RoleId:roleId},

解决方案七:
引用5楼shengguang1587的回复:

data:"{roleId:"+roleId+"}",以后调用不要这样来写有歧义你括号包起来代表他是键值所以我上面给你写的是data:{RoleId:roleId},

之前$ajax中加了contentType:"application/json;charset=utf-8",调用的时候json参数传的是roleId=1,因此进入错误处理函数了将contentType:"application/json;charset=utf-8",注释掉就好了这时json参数传的是roleId:"1",因此没问题了我还是安装了火狐浏览器调试出来的,不知道为什么加了contentType:"application/json;charset=utf-8",请求参数会成为roleId=1不加默认是什么?
解决方案八:
引用6楼xuanyuan0205的回复:

Quote: 引用5楼shengguang1587的回复:
data:"{roleId:"+roleId+"}",以后调用不要这样来写有歧义你括号包起来代表他是键值所以我上面给你写的是data:{RoleId:roleId},

之前$ajax中加了contentType:"application/json;charset=utf-8",调用的时候json参数传的是roleId=1,因此进入错误处理函数了将contentType:"application/json;charset=utf-8",注释掉就好了这时json参数传的是roleId:"1",因此没问题了我还是安装了火狐浏览器调试出来的,不知道为什么加了contentType:"application/json;charset=utf-8",请求参数会成为roleId=1不加默认是什么?

contentType默认值为application/x-www-form-urlencoded标准JSON格式为[{"Key":"Value"}]
解决方案九:
引用7楼shengguang1587的回复:

Quote: 引用6楼xuanyuan0205的回复:
Quote: 引用5楼shengguang1587的回复:
data:"{roleId:"+roleId+"}",以后调用不要这样来写有歧义你括号包起来代表他是键值所以我上面给你写的是data:{RoleId:roleId},

之前$ajax中加了contentType:"application/json;charset=utf-8",调用的时候json参数传的是roleId=1,因此进入错误处理函数了将contentType:"application/json;charset=utf-8",注释掉就好了这时json参数传的是roleId:"1",因此没问题了我还是安装了火狐浏览器调试出来的,不知道为什么加了contentType:"application/json;charset=utf-8",请求参数会成为roleId=1不加默认是什么?

contentType默认值为application/x-www-form-urlencoded标准JSON格式为[{"Key":"Value"}]

contentType:"application/json;charset=utf-8",这不是请求json格式吗?

时间: 2024-09-20 12:08:45

jquery的ajax调用的相关文章

Jquery利用ajax调用asp.net webservice的各种数据类型(总结篇)

原文:Jquery利用ajax调用asp.net webservice的各种数据类型(总结篇) 老话说的好:好记心不如烂笔头! 本着这原则,我把最近工作中遇到的jquery利用ajax调用web服务的各种数据类型做了一个总结! 本文章没有什么高难度技术,就是记录一下,汇总一下,以便以后需要时查看! 本总结牵涉的数据类型,主要有: string,int这样的基本数据类型 ClassA这样的自定义类 List<ClassA>这样的集合类型 Dictionary这样的字典类型数据 DataSet这样

jQuery实现ajax调用WCF服务的方法(附带demo下载)_jquery

本文实例讲述了jQuery实现ajax调用WCF服务的方法.分享给大家供大家参考,具体如下: 关于AJAX调用WCF服务分为跨域和不跨域两种方式,今天咱们先介绍下不跨域下的调用方法.DEMO是在VS2008写的. 经过测试与研究,发现AJAX调用WCF服务必须满足以下条件 1.wcf的通讯方式必须使用webHttpBinding 2.必须设置<endpointBehaviors>节点的值 3.服务的实现必须添加标记 复制代码 代码如下: [AspNetCompatibilityRequirem

jquery的ajax调用Webservice返回Json数组

本文章是利用jquery的ajax调用webservice返回json数组哦,json数据是网页特效的一种小型轻型数据,实时交互性更强于xml哦. json数据 {'employee':[{'name':'john','sex':'man','age':'25'},{'name':'tom','sex':'man','age':'21'},{'name':'mary','sex':'woman','age':'21'}]}     //jquery 调用webservice导入数据       

JQuery与Ajax调用新浪API获取短网址的代码

 这篇文章主要介绍了调用新浪API获取短网址的方法有很多,本例为大家介绍下使用JQuery与Ajax来实现,需要的朋友可以参考下  代码如下: <!doctype html>  <html>  <head>  <meta charset="utf-8">  <title>获取新浪短网址</title>  <script src="http://ajax.aspnetcdn.com/ajax/jQue

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

使用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代码如下

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

使用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代码如下

JQuery的AJAX调用(二)——AJAX方法

一,使用AJAX方法加载服务器数据    使用ajax()方法是最底层.功能最强大的请求服务器数据的方法,它不仅可以获取服务器返回的数据,还能向服务器发送请求并传递数值,它的调用格式如下:      jQuery.ajax([settings])或$.ajax([settings])    其中参数settings为发送ajax请求时的配置对象,在该对象中,url表示服务器请求的路径,data为请求时传递的数据,dataType为服务器返回的数据类型,success为请求成功的执行的回调函数,t

JQuery与Ajax调用新浪API获取短网址的代码_jquery

复制代码 代码如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>获取新浪短网址</title> <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.0.js"></script> <!--<script type

JQuery的AJAX调用(一)——加载传递数据

 一,load方法异步请求数据        使用load()方法通过Ajax请求加载服务器中的数据,并把返回的数据放置到指定的元素中,它的调用格式为:        load(url,[data],[callback])       参数url为加载服务器地址,可选项data参数为请求时发送的数据,callback参数为数据请求成功后,执行的回调函数.              二,使用getJSON()方法异步加载JSON格式数据     使用getJSON()方法可以通过Ajax异步请求的