先介绍一下整理
htmlPage2.html是登入界面 里面嵌套了一个htmlPage1.html
然后htmlPage1.html通过javascript post发送数据通过LoginHandler.ashx进行数据处理
此实例来自http://www.luofenming.com 不懂的可以找我,我可以免费的教你
以下是htmlPage2.html代码
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<meta charset="utf-8" />
</head>
<body>
结果:<span id="txtResult"></span><br />
<iframe src="HtmlPage1.html" name="upload" align="top" frameborder="0" style="height: 120px; width: 400px;"></iframe>
</body>
</html>
以下是htmlPage1.html代码
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<meta charset="utf-8" />
<script type="text/javascript">
function GetData() {
var userName = document.getElementById("txtUserName").value;
var userPwd = document.getElementById("txtUserPwd").value;
if (userName == "") {
alert("帐号不能为空");
return;
}
if (userPwd == "") {
alert("密码不能为空");
return;
}
StandardPost('LoginHandler.ashx', { 'userName': userName, 'userPwd': userPwd });//调用post发送方法
}
function StandardPost(url, args) {//纯JS post发送数据
var myForm = document.createElement("form");
myForm.method = "post";
myForm.action = url;
for (var k in args) {
var myInput = document.createElement("input");
myInput.setAttribute("name", k);
myInput.setAttribute("value", args[k]);
myForm.appendChild(myInput);
}
document.body.appendChild(myForm);
myForm.submit();
document.body.removeChild(myForm);
}
</script>
</head>
<body>
用户名:<input type="text" id="txtUserName" /><br />
密码:<input type="text" id="txtUserPwd" /><br />
<input type="button" value="登入" id="btnSend" onclick="GetData()" />
</body>
</html>
以下是LoginHandler.ashx代码
using Bll;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
namespace Share.AdminWeb
{
/// <summary>
/// LoginHandler 的摘要说明
/// </summary>
public class LoginHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/html";
string userName = context.Request.Form["userName"];//要改为request.Form["txtname"]当然都可以只用request["txtname"]
string userPwd = context.Request.Form["userPwd"];
string msg = LoginInfo(userName, userPwd);
if (!string.IsNullOrEmpty(msg))
{
context.Response.Write("OK<script>window.parent.document.getElementById(\"txtResult\").innerText = \"lqwvje\";window.setTimeout(function () {window.parent.location.href = 'index.aspx';}, 2000);</script>");
//成功之后跳转到后台
}
else
{
context.Response.Write("err<script>window.parent.document.getElementById(\"txtResult\").value = \"帐号或密码错误\";window.setTimeout(function () {location.href = 'htmlPage1.html';}, 2000);</script>");
//不成功
}
}
public string LoginInfo(string userName, string userPwd)
{
string msg = string.Empty;
Model.Account account = AccountBll.GetModel(userName);
if (account == null)
{
return msg=null;
}
if (Common.CFun.Encrypt(userPwd.Trim(), "Share").Equals(account.LoginPwd))
{
msg = "ok";
}
return msg;
}
public bool IsReusable
{
get
{
return false;
}
}
}
}