jquery ajax获取全局beforeSend方法问题

pps003 2012-07-07 01:47:13
我想在jqeury发送ajax请求之前进行一些判断,判断不成立就在beforeSend方法里面把ajax终止


<script language="javascript" type="text/javascript">
$.ajaxSetup({
beforeSend:function(XMLHttpRequest){
XMLHttpRequest.abort();
alert("ajax请求之前");
}
});
$("#AjaxTest").bind('ajaxSend', function () {
alert("ajax请求发送中");//没有弹出消息框,说明发送请求之前终止了
});
$(function() {
$("#AjaxTest").click(function() {
$.ajax({
//要用post方式
type: "Post",
//方法所在页面和方法名
url: "test.aspx/AjaxTest",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data) {
//返回的数据用data.d获取内容
alert(data.d);
},
error: function(err) {
alert(err);
},
ajaxSend:function(){
//XMLHttpRequest.abort();
document.write("发送中");
}
});
});
});
</script>

$.ajaxSetup({
beforeSend:function(XMLHttpRequest){
XMLHttpRequest.abort();
alert("ajax请求之前");
}
});
在这里beforeSend时候有办法获取上面ajax红色部分url的值吗?我要对这个url进行判断。百度搜索半天,看到一个是这样写的

$("#msg").beforeSend(function(e,xhr,o) {
$(this).html("正在请求"+o.url);
}).ajaxSuccess(function(e,xhr,o) {
$(this).html(o.url+"请求成功");
}).ajaxError(function(e,xhr,o) {
$(this).html(o.url+"请求失败");
});
o.url获取 ajax请求地址,但是一样的代码 运行不起来。大家帮帮我怎么全局时候怎么获取ajax的url参数啊
...全文
1099 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ayanamireizero 2014-10-25
  • 打赏
  • 举报
回复
其实你做判断也不是非得放在beforesend里啊... 你完全可以这样 if(条件成立){ $.ajax({});} else{ alert("条件不成立,不能ajax"); } 另外,你那个url,是直接输进去的字符串还是有个input type='hidden'这样保存的还是怎么来的?你要判断这个URL判断啥?判断这个URL是不是存在?还是判断这个URL返回值是否符合条件???
liuweihug22222 2014-10-24
  • 打赏
  • 举报
回复
jquery全局ajax参数详细执行分析-$.ajax竟然可以这样用! http://www.suchso.com/projecteactual/jquery-ajax-args-use-global-setup.html
pps003 2012-07-07
  • 打赏
  • 举报
回复
$(document).ajaxSend(function(evt, request, settings) {alert(settings.url);request.abort(); })
上面不知道为什么request.abort()后跳到ajax的 error时间里面了,这样是获取了ajax的url,有没有更好的办法呢,有直接怎么调用ajax的url参数的办法吗?或者告诉我下为什么会跳到error事件呢,先睡了,希望明天得到解决,我要全局设置一个页面所有的ajax都进行判断的
pps003 2012-07-07
  • 打赏
  • 举报
回复
$(document).ajaxSend(function(evt, request, settings) {alert(settings.url);request.abort(); })

我把代码修改成这样之后,没有执行服务器事件了,但是怎么跳到ajax error事件里面去了。不理解,求高人答复

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧