html代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<style type="text/css">
div{
width:100px;
height:100px;
background-color:green;
padding-left:50px;
padding-top:50px;
font-size:xx-large;
color:red;
}
</style>
</head>
<body>
<form method="post" action="Handler.ashx">
<input type="hidden" name="hid" value="$count" />
<div>
$div
</div>
数值:<input type="text" name="txt" value="$num" /><br />
<input type="submit" value="自增" /><br />
</form>
</body>
</html>
一般处理程序代码:
<%@ WebHandler Language="C#" Class="Handler" %>
using System;
using System.Web;
public class Handler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
// html页面有 占位符 时,需要先运行此页面;
context.Response.ContentType = "text/html";
int num = 0;
num = Convert.ToInt32(context.Request.Form["txt"]); // 获取输入框中的数值;
num++;
// 在div上实现自增:由于div上的数值不能传递到服务器,所以可以通过form表单中的隐藏域来实现。
string str = context.Request.Form["hid"];
int i = Convert.ToInt32(str);
i++;
string filePath = context.Request.MapPath("HtmlPage.html"); // 获取html文件的物理路径;
string strHtml = System.IO.File.ReadAllText(filePath); // 读取html模板内容;
strHtml = strHtml.Replace("$num", num.ToString()); // 将数值自增之后的值传给输入框;
strHtml = strHtml.Replace("$count", i.ToString()).Replace("$div", i.ToString());
context.Response.Write(strHtml); // 输出html;
}
public bool IsReusable
{
get
{
return false;
}
}
}