您的位置:首页 > 其它

一个ajax的Post要求

2015-08-19 20:33 267 查看
<1>

$.post(url,[data],[callback],[type]) 第一个参数是地址,第二个参数是一个参数传递。第三个参数是一个回调函数。參数是请求返回数据的类型

//一个ajax的Post请求
function submitInfo() {
$(".warn").hide(); //刚提交的时候隐藏错误的信息
var data = $("#formData").serialize(); //将表单的数据通过序列化表单值,创建 URL 编码文本字符串。

形成一个表单元素集合的 jQuery 对象
$.post("/login/checkLoginInfo", data, function (ajaxObj) { //将数据提交到login控制器下的CheckLOginInfo方法。參数是data。  假设请求成功。function就是请求成功时运行的回调函数。ajaxObj是checkLoginInfo方法的返回数据
//回传内容{status: 1(success)/0(fail),}
if (ajaxObj.status == 0 || status == null) { //假设返回状态为0或者为null
$(".warn").show(); //将错误信息显示出来
} else {
//登陆成功。跳转都制定页面
window.location = '/HotelList/Index';
}
}, "json"); //这里是第四个參数,这里设置了获取数据的类型,所以得到的数据格式为json类型的

}


<2>

注意这条语句的參数。与回调函数 loginFinish 与上面条$.Post()请求的差别

$.post("/ajax/UserLogin.ashx",

{ "username": username, "password": password },

loginFinish);

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="/css/ui-lightness/jquery-ui-1.8.2.custom.css" rel="stylesheet" type="text/css" />
<script src="/js/jquery-1.4.2.js" type="text/javascript"></script>
<script src="/js/jquery-ui-1.8.2.custom.js" type="text/javascript"></script>
<script type="text/javascript">
//向服务器请求当前登录状态。然后切换登录区域的显示
var checkLogin = function () {
$.post("/ajax/CheckLogin.ashx", function (data) {
var strs = data.split("|");
if (strs[0] == "no") {
//alert("木有登陆");
$("#divLoginArea").show(); //假设没有登陆就显示"登陆"
$("#divLoginOutArea").hide(); //隐藏"注销"
}
else {
//切换“登录”、“注销”的两个层
$("#divLoginArea").hide(); //隐藏"登陆"
$("#divLoginOutArea").show(); //显示 "注销"
$("#spanUserName").text(strs[1]);//把当前登录username显示出来
}
});
}

var loginFinish = function (data) {  //这是一个回调函数
if (data == "ok") {
//alert("成功");
$("#divLogin").dialog("close"); //登录成功关闭窗体
checkLogin();//登录成功。刷新登录区域的显示
}
else {
alert("username密码错误");
}
};
$(function () {
$("#btnShowLoginDlg").click(function () {
$("#divLogin").dialog({
height: 200,
modal: true
});
});
$("#btnLogin").click(function () {  //当用户点击"登陆" 控件触发事件
//todo:检验username、密码不能为空
var username = $("#txtUserName").val();
var password = $("#txtPwd").val();
$.post("/ajax/UserLogin.ashx",//----------------------请关注这条$.Post()请求的參数与回调函数
{ "username": username, "password": password },
loginFinish);
});
});

$(function () {
checkLogin();//刚进入页面的时候也是先向服务器查询当前登录状态
$("#btnLogout").click(function () {
$.post("/ajax/Logout.ashx", function () {
checkLogin();//刷新显示
});
});
});
</script>
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<div>
<div id="divLoginArea" style="display:none"><input type="button" value="登录" id="btnShowLoginDlg" /></div>
<div id="divLoginOutArea" style="display:none">
<span id="spanUserName"></span>
<input type="button" value="注销" id="btnLogout" />
</div>
<div id="divLogin" title="登录窗体"  style="display:none">
<table>
<tr><td>username:</td><td><input type="text"  id="txtUserName"/></td></tr>
<tr><td>密码:</td><td><input type="password"  id="txtPwd"/></td></tr>
<tr><td colspan="2"><input type="button" value="登录" id="btnLogin" /></td></tr>
</table>
</div>
<br />
<asp:ContentPlaceHolder ID="placeHolderMain" runat="server">

</asp:ContentPlaceHolder>
<br />
尾部<br />
</div>
</form>
</body>
</html>





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: