Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么Chrome在我的HTML顶部打上一个主体,然后给我一个看似虚假的错误消息?_C#_Jquery_Html_Ajax_Google Chrome Devtools - Fatal编程技术网

C# 为什么Chrome在我的HTML顶部打上一个主体,然后给我一个看似虚假的错误消息?

C# 为什么Chrome在我的HTML顶部打上一个主体,然后给我一个看似虚假的错误消息?,c#,jquery,html,ajax,google-chrome-devtools,C#,Jquery,Html,Ajax,Google Chrome Devtools,当我从通过Ajax调用的REST方法返回动态生成的html时,我正在替换页面上的html,如下所示: [HttpGet] [Route("{unit}/{begdate}/{enddate}", Name = "QuadrantData")] public HttpResponseMessage GetQuadrantData(string unit, string begdate, string enddate) { _unit = unit; _beginDate = beg

当我从通过Ajax调用的REST方法返回动态生成的html时,我正在替换页面上的html,如下所示:

[HttpGet]
[Route("{unit}/{begdate}/{enddate}", Name = "QuadrantData")]
public HttpResponseMessage GetQuadrantData(string unit, string begdate, string enddate)
{
    _unit = unit;
    _beginDate = begdate;
    _endDate = enddate;
    string beginningHtml = GetBeginningHTML(); // This could be called from any page to reuse the same "header"
    string bodyBeginningHtml = GetBodyBeginHTML();
    string top10ItemsPurchasedHtml = GetTop10ItemsPurchasedHTML();
    string pricingExceptionsHtml = GetPriceComplianceHTML();
    string forecastedSpendHtml = GetForecastedSpendHTML();
    string deliveryPerformanceHtml = GetDeliveryPerformanceHTML();
    string endingHtml = GetEndingHTML();
    String HtmlToDisplay = string.Format("{0}{1}{2}{3}{4}{5}{6}",
        beginningHtml,
        bodyBeginningHtml,
        top10ItemsPurchasedHtml,
        pricingExceptionsHtml,
        forecastedSpendHtml,
        deliveryPerformanceHtml,
        endingHtml);

    return new HttpResponseMessage()
    {
        Content = new StringContent(
            HtmlToDisplay,
            Encoding.UTF8,
            "text/html"
        )
    };
}
它是从ready函数(单击按钮时)中调用的,如下所示:

名为“HtmlToDisplay”(“Ajax调用中的returneddata”)的字符串的开头如下:

<!DOCTYPE html><html><head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><title>eServices Reporting - Customer Dashboard</title><link rel=\"stylesheet\" href=\"http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css\"><script src= . . .

eServices Reporting-Customer Dashboard查看错误消息
Uncaught SyntaxError:Unexpected token var
我认为这与HTML无关,而是关于嵌入HTML中的JS代码


在声明下一个
var
之前是否缺少分号/括号/语句结尾?我建议您将完整的
returneddata
复制到您最喜欢的编辑器中,并搜索所有
var
s,查看前一行上是否有任何问题

这个问题读起来像是在现有正文中插入一个包含第二个正文的整个html文档。这听起来很奇怪,因为BODY不是文档根。您可能想改用
$('html')
。您的意思是:$('html”).html(returneddata)。。。而不是:$(“body”).html(returneddata)?这没什么区别——结果是一样的。还有:“为什么html以空行开头,这可能有问题吗?”因为这是服务器返回的结果,没有问题。调试器把你带到空白处并不能说明那里有错误,它只是无法找到错误原因所在的位置,这可能是因为它不是原始页面的一部分。如果你通过JavaScript渲染整个网页,为什么不直接导航到另一个页面呢?AJAX用于更新部分网页,以节省带宽和重新加载整个页面的资源。
<!DOCTYPE html><html><head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><title>eServices Reporting - Customer Dashboard</title><link rel=\"stylesheet\" href=\"http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css\"><script src= . . .
<body>

<!DOCTYPE html>
<html>
<head>
<body>
    @RenderBody()
    <hr />
    <footer>
        <p> &copy; @DateTime.Now.Year - PRO*ACT USA</p>
    </footer>
</body>