post回调函数不执行行一般是什么原因

  前一段时间接触了JQuery Ajax中的.post()方法和.get()方法,感觉到ajax的简洁和强大,当用到.post()方法时,去W3上查找相关的使用方法,感觉十分简单,用法很明了,然后,直接根据自己的需要(js将数据post给php写入数据库,然后返回给js一个值)开写了,写完了,运行,竟然不行!然后仔细地对比我的代码和demo的不同,为了查找错误,将我的代码写的几乎和demo相同了,但是还是无法在js中获得php的数据。
  这里先回忆一下.post()方法。
jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)
将请求发送到的url
发送的数据(可选)
success(data, textStatus, jqXHR)
执行成功后的回调函数,参数均可选,data是返回的数据,
textStatus是函数的状态,也可以加入jqXHR得到函数
的返回状态
预期的服务器相应的数据类型
  经过仔细的对比,发现js的代码已经不能再改了,然后我开始看php的代码,发现,跟网上唯一不同的是,我增加了一个插入数据库的操作,难道是这个的原因?我把连接数据库、插入数据库的操作通通注释掉了以后,成功了~~~(必然啊,跟网上的demo不能再一样了)。
  这是为什么呢,然后开始在网上查资料,突然看到了post()函数的时间问题,大体意思是,当我url连接到插入数据库的php界面时,需要一定的执行时间插入数据库,当我的click函数执行了,刷新了之后,回调函数还没有机会执行post就完成了,所以无论我怎么刷新都没变化。
$.ajax({url:c_url,
timeout:3000,
success: function(data){alert("aaa");}
  加入超时限制,测试之后,发现function也是能执行的,很明显是超时的问题。插入数据库拖慢了post执行成功回调的时间,于是,我将连接数据库和插入数据库单独加入一个新建的php页面,然后,可以得到数据了。
  这是我最后的js代码:
1 $(document).ready(function(){
$("a").click(function(){
var c_url = 'http://localhost/test/check.php';
$.post("db.php",{id:"5"});
$.post("check.php",{},function(data){jj=$("#tname").html(data);}).success(function() { alert("second success"); })
.error(function(a) { alert("error"+a.ResponseText);alert(json_last_error ()); })
.complete(function() { alert("complete"); });
$("#tname").html(data);
  其中,check.php只有单独定义的一个数组返回用于测试是否收到。
  至此,算是结束了,不过这样执行,html方法改变了标签内容,但是在页面上显示一下就突然刷新没了,还没有解决。希望各位大神指点~
  第一次接触ajax就碰上了这样的问题,以后还是要系统地学一下。
阅读(...) 评论()jquery Ajax 不执行回调函数success的原因 -
jquery Ajax 不执行回调函数success的原因
jquery Ajax 不执行回调函数success的原因:
type: "post",
contentType: "application/json",
url: basePath+"pages/Tongji/disposeAgree.action?cepingitem="+cepingitem+"&userrelation="+userrelation,
//data: {fenshu:8},dataType: "json",
success: function (result) {
alert("操作成功");
error:function(response){
alert("error");
如上,因为设置了属性dataType:"json",故如果后台返回的不是正确的JSON字符串,那么永远不执行回调函数success,而只执行error函数。要么返回正确的JSON字符串,要么把dataType属性改为text
正确的返回JSON字符串如下:
pw.write("{\"name\":\"zs\"}");
pw.write("{\"name\":"+true+"}");
错误的例子:
pw.write("{&name&:&zs&}");
更多相关文章
jquery ajax 总是还未等到success回调就刷掉了,就进入了onError函数的错误案例分析: 同样的请求同时请求了2次,然后第二次的请求把第一次的给刷掉了! (比如:&div onclick=&ajax(url)&&&a onclick=&quot ...
在此之前,我百度不少资料,与我不同的是,别人返回的是json 格式 我返回的是 text 文本格式 首先说下json 保证传递的数据 严格按照键值对的形式 且键名 要加引号 {'name':'zhangsan', 'sex':'man','age':19} 再来谈我的问题,我试着将所有的json格式 ...
MS AJAX类库的回调函数中不能使用window.open(); 举例: 有一个WebService
文件名为QueryService.asmx 代码如下:
[WebService(Namespace = &http://tempuri.org/&)]
我们都知道jQuery为ajax请求封装了success和error两个回调方法,其实jQuery也实现了为非ajax请求的普通方法也设计了绑定回调函数的方法. 当一个方法需要等待另一个耗时很长的方法完成之后才能执行的时候,我们非常希望可以监听这个耗时的方法. 示例: var wait = func ...
大家先看一段简单的jquery ajax 返回值的js 代码 代码如下: function getReturnAjax{ $.ajax({ type:&POST&, url:&ajax/userexist.aspx&, data:&username= ...
pinyin4j的使用 pinyin4j是一个功能强悍的汉语拼音工具包,主要是从汉语获取各种格式和需求的拼音,功能强悍,下面看看如何使用pinyin4j. 本人以前用AscII编码提取工具,效果不理想,现在用piny ...
1. 晚上写了一个显式具体化的小程序,编译的时候报如下错误: 'char* maxn(co ...
1. 首先,两个服务器上SPS和WSS的版本号一定要一致.因为产品很可能会因为打了补丁.修复程序后而完善了数据结构造成了变化. 2. 但产品版本号的一致性检查,只是最基本的.也是一定要满足的必要条件,并非充分条件.如 ...
fdisk -l:列出机器中所有磁盘的个数,也能列出所有磁盘分区情况
local_irq_disable禁用当前处理器上的中断发送.注意, flags 被直接传递, 而不是通过指针来传递. local_irq_disable不保存状态而关闭本地处理器上的中断发送; 只有我们知道中断并未 ...
友情链接:
管理员邮箱:info@2017年4月 Web 开发大版内专家分月排行榜第二2017年3月 Web 开发大版内专家分月排行榜第二2017年1月 Web 开发大版内专家分月排行榜第二2016年11月 Web 开发大版内专家分月排行榜第二2016年9月 Web 开发大版内专家分月排行榜第二2016年8月 Web 开发大版内专家分月排行榜第二2016年7月 Web 开发大版内专家分月排行榜第二2016年6月 Web 开发大版内专家分月排行榜第二2016年5月 Web 开发大版内专家分月排行榜第二2016年4月 Web 开发大版内专家分月排行榜第二2016年2月 Web 开发大版内专家分月排行榜第二2015年9月 Web 开发大版内专家分月排行榜第二2015年7月 Web 开发大版内专家分月排行榜第二2015年6月 Web 开发大版内专家分月排行榜第二2015年4月 Web 开发大版内专家分月排行榜第二2015年3月 Web 开发大版内专家分月排行榜第二2015年2月 Web 开发大版内专家分月排行榜第二
2016年12月 Web 开发大版内专家分月排行榜第三2016年10月 Web 开发大版内专家分月排行榜第三2016年1月 Web 开发大版内专家分月排行榜第三2015年12月 Web 开发大版内专家分月排行榜第三2015年11月 Web 开发大版内专家分月排行榜第三2015年10月 Web 开发大版内专家分月排行榜第三2015年5月 Web 开发大版内专家分月排行榜第三2015年1月 Web 开发大版内专家分月排行榜第三2014年12月 Web 开发大版内专家分月排行榜第三
2017年4月 Web 开发大版内专家分月排行榜第二2017年3月 Web 开发大版内专家分月排行榜第二2017年1月 Web 开发大版内专家分月排行榜第二2016年11月 Web 开发大版内专家分月排行榜第二2016年9月 Web 开发大版内专家分月排行榜第二2016年8月 Web 开发大版内专家分月排行榜第二2016年7月 Web 开发大版内专家分月排行榜第二2016年6月 Web 开发大版内专家分月排行榜第二2016年5月 Web 开发大版内专家分月排行榜第二2016年4月 Web 开发大版内专家分月排行榜第二2016年2月 Web 开发大版内专家分月排行榜第二2015年9月 Web 开发大版内专家分月排行榜第二2015年7月 Web 开发大版内专家分月排行榜第二2015年6月 Web 开发大版内专家分月排行榜第二2015年4月 Web 开发大版内专家分月排行榜第二2015年3月 Web 开发大版内专家分月排行榜第二2015年2月 Web 开发大版内专家分月排行榜第二
2016年12月 Web 开发大版内专家分月排行榜第三2016年10月 Web 开发大版内专家分月排行榜第三2016年1月 Web 开发大版内专家分月排行榜第三2015年12月 Web 开发大版内专家分月排行榜第三2015年11月 Web 开发大版内专家分月排行榜第三2015年10月 Web 开发大版内专家分月排行榜第三2015年5月 Web 开发大版内专家分月排行榜第三2015年1月 Web 开发大版内专家分月排行榜第三2014年12月 Web 开发大版内专家分月排行榜第三
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。当前位置: >
> jQuery Ajax Post 回调函数不履行问题的解决法子jQuery Ajax Post 回调函数不履行问题的解决法子更新:&&&&编辑:幻翠&&&&来源:转载&&&&人气:加载中...&&&&字号:|标签:&&&&&&&&&&&&
今天在写一个反省用户名的功能时,的是.post( url, [data], [callback], [type] )这个,但是发现其中的不能履行。
先来看看我的代码:
前台代码:
&script type="text/javascript"&
function checkUser() {
var user = $('#&%=txtUser.ClientID %&').val();
$.post('checkUser.ashx', { Action: "Check", Name: user },
function (data) {
alert(data);
后台代码(checkUser.ashx):
public void ProcessRequest(HttpContext context)
context.Response.ContentType = "application/json";
string action = context.Request["Action"];
string user = context.Request["Name"];
string result = "{result: 0}";
switch (action)
case "Check":
if (us.isExists(user))
result = "{result: 1}";
context.Response.Write(result);
但是怎么也不履行函数中的alert(data)语句,经过单步跟踪,最后发现是返回的Json字符串有。
原来jquery中规定返回的JSON字符串的KEY要用引号括起来,如{"result": 1}这样才可以。
下面再看下jquery
不履行回调函数success的原因
不履行回调函数success的原因:
type: "post",
contentType: "application/json",
url: basePath+"pages/Tongji/disposeAgree.action?cepingitem="+cepingitem+"&userrelation="+userrelation,
//data: {fenshu:8},
dataType: "json",
success: function (result) {
alert("操作成功");
error:function(response){
alert("error");
如上,因为设置了属性dataType:"json",故如果后台返回的不是正确的JSON字符串,那么永远不履行回调函数success,而只履行error函数。要么返回正确的JSON字符串,,要么把dataType属性改为text
正确的返回JSON字符串如下:
pw.write("{\"name\":\"zs\"}");
pw.write("{\"name\":"+true+"}");
差错的例子:
pw.write("{‘name':‘zs'}");
以上所述是给大家介绍的 Ajax
回调函数不履行问法子,愿望对大家有所,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家的支持!
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
分类选择您可能在找这些帮设计师节省1,085,543,232小时}

我要回帖

更多关于 回调函数执行顺序 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信