asp.net中的jquery get方法为我带来了整个html页面

时间:2015-11-04 17:47:18

标签: c# jquery asp.net

我写了一个jQuery" get"方法,以便从(相同的asp页面)后面的c#代码获得响应。

问题在于我获得了页面的整个HTML代码。而不是只获得响应值。 这是jQuery代码:

   public partial class AddNewBankHtml : System.Web.UI.Page
{
    [System.Web.Services.WebMethod] 
        protected void Page_Load(object sender, EventArgs e)
    {
      Response.Write(others.BanksNomber.BanksListInHtmlFormat());
    }
}

背后的c#代码:

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
我用Google搜索了很多次,但没有找到帮助我的东西。 谢谢你的回答!

1 个答案:

答案 0 :(得分:-1)

如果您实际使用的是Asp.Net,那么您的扩展名应为.aspx。既然你提到使用代码隐藏我就是假设那样的话。所以这就是我使用Asp.Net进行ajax调用的方式。

您不应该使用包含任何HTML的ASPX页面。整个页面仅引用代码隐藏。页面上的任何HTML都将与响应文本一起返回。

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AddNewBankHtml.aspx.cs" Inherits="ajax_AddNewBankHtml" %>

在您的代码隐藏中,您需要根据输出的JSON还是纯文本来设置响应类型。

protected void Page_Load(object sender, EventArgs e)
{
    Response.Expires = -1;
    //required to keep the page from being cached on the client's browser

    Response.ContentType = "text/plain";
    Response.Write("Hello");
    Response.End();
}

如果您设置了正确的内容类型,您可以输出任何您喜欢的内容:Javascript,XML,JSON等等。