我想创建一个Web表单,我将通过jQuery基于GET参数执行一些后台操作,并将打印1或0.但是问题 - ASP.NET默认打印大量HTML,即使没有代码存在于标记窗口
中<%@ Page Language="C#"%>
<%
try
{
int cID = int.Parse(Request.QueryString["cid"].ToString());
//do some job and print 1 or 0
}
catch { }
%>
但是在输出窗口中我看到HTML代码
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=windows-1252" http-equiv=Content-Type></HEAD>
<BODY></BODY></HTML>
答案 0 :(得分:1)
我建议您使用ashx(添加新项目&gt; Generic Handler)处理程序而不是aspx格式
在进程请求中将响应Mime类型更改为text / plain并简单地将查询字符串值写入响应
MyHandler.ashx.cs:
/// <summary>
/// Summary description for MyHandler
/// </summary>
public class MyHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write(context.Request.QueryString["cid"]);
}
public bool IsReusable
{
get
{
return false;
}
}
}
使用jQuery获取客户端的值:
$.ajax({
type: "GET",
url: "MyHandler.ashx?cid=10",
contentType: "text/plain",
dataType: "text",
success: function (data) {
alert(data);
}
})