返回完整的HTML页面,而不是JSON响应中的字符串输出

本文关键字:JSON 响应 字符串 输出 HTML 页面 返回 | 更新日期: 2023-09-27 18:11:40

我试图通过使用web方法的ajax实现最简单的任务。我的web方法如下

[WebMethod]
    public static string GetDate()
    {
        return string.Format("says {0}", DateTime.Now.ToString("r"));
    }

和ajax代码如下

 $(document).ready(function() {
            $("#Result").click(function() {
                alert('Result Clicked');
                $.ajax(
               {
                   type: "POST",
                   url: "test1.aspx/GetDate",
                   data : "{}",
                   contentType: "application/json",
                   dataType: "json text",
                   success: function(rsp) {
                       alert('success');
                       alert(rsp);
                       alert(rsp.d);
                       $('#Result').append(rsp.d);

                   },
                   error: function(rsp) {
                       alert(rsp.status + " " + rsp.statusText + "</br>" + rsp.responseText);
                       console.log(rsp);
                       console.log(rsp.responseText);
                   }
               });
            });
        });

但是status表示OK和200状态码,但是在rsp.d中不是简单的字符串,它显示了页面本身的完整HTML。

返回完整的HTML页面,而不是JSON响应中的字符串输出

你可以试试这段代码,可能是Help Full.

$("#Result").click(function () {
                alert('Result Clicked');
                $.ajax(
                    {
                   type: "POST",
                   url: "Default.aspx/GetDate",
                   contentType: "application/json; charset=utf-8",
                   dataType: "json",
                   success: function (rsp) {
                       alert('success');
                       alert(rsp);
                       alert(rsp.d);
                       $('#Result').append(rsp.d);
                   },
                   error: function (rsp) {
                       alert(rsp.status + " " + rsp.statusText + "</br>" + rsp.responseText);
                   }
               });
            });