首页 > 其他分享 >ajax中的一个beforeSend属性

ajax中的一个beforeSend属性

时间:2022-10-23 16:57:21浏览次数:45  
标签:请求 发送 ajax beforeSend 后台 loginAct 属性 函数

ajax中跟success,url等同级别的属性(函数).

ajax向后台发送请求之前,会自动执行本函数;

该函数的返回值能够决定ajax是否真正向后台发送请求:

如果该函数返回true,则ajax会真正向后台发送请求;否则,如果该函数返回false,则ajax放弃向后台发送请求。

<script type="text/javascript">
$(function () {
		//给整个浏览器窗口添加键盘按下事件
		$(window).keydown(function (e) {
			//如果按的是回车键,则提交登录请求
			if(e.keyCode==13){
				$("#loginBtn").click();
			}
		});

		//给"登录"按钮添加单击事件
		$("#loginBtn").click(function () {
			//收集参数
			var loginAct=$.trim($("#loginAct").val());
			var loginPwd=$.trim($("#loginPwd").val());
			var isRemPwd=$("#isRemPwd").prop("checked");//单选框是否被选中
			//表单验证
			if(loginAct==""){
				alert("用户名不能为空");
				return;//表示结束函数体的执行.
			}
			if(loginPwd==""){
				alert("密码不能为空");
				return;
			}

			//显示正在验证
			//$("#msg").text("正在努力验证....");
			//发送请求
			$.ajax({
				url:'settings/qx/user/login.do',//这里最前面没有斜杠是我们页面是基于上面的basePath,这个basePath最后面是加/的 
				data:{
					loginAct:loginAct,
					loginPwd:loginPwd,
					isRemPwd:isRemPwd
				},
				type:'post',
				dataType:'json',
				success:function (data) {
					if(data.code=="1"){
						//跳转到业务主页面,为什么不能直接跳转到对应页面.
						//因为web-inf是受保护的,用户不能直接访问web-inf下面的资源.
						//需要发送一个同步请求,发送同步请求的三种方式
						window.location.href="workbench/index.do";
					}else{
						//提示信息
						$("#msg").text(data.message);
					}
				},
				beforeSend:function () {//当ajax向后台发送请求之前,会自动执行本函数;
					                    //该函数的返回值能够决定ajax是否真正向后台发送请求:
									    //如果该函数返回true,则ajax会真正向后台发送请求;否则,如果该函数返回false,则ajax放弃向后台发送请求。
					$("#msg").text("正在努力验证....");
					return true;
				}
			});
		});
	});
</script>

标签:请求,发送,ajax,beforeSend,后台,loginAct,属性,函数
From: https://www.cnblogs.com/javaxubo/p/16818869.html

相关文章