繁体   English   中英

是什么原因导致此JavaScript错误?

[英]What could be causing this JavaScript error?

我正在修改加载用户控件的ASP.NET网络表单。 在用户控件中,有JavaScript生成错误。 错误是:

JavaScript运行时错误:属性'GetFirstItineraryObjects'的值为null或未定义,不是Function对象

这是函数调用列表中的一个调用,其中包含:

GetFirstItineraryObjects();

是的,当我检查页面源渲染时(在跳过JS错误之后),此功能确实存在。 我确实想知道我修改的此函数中的一行是否可能导致此问题,因此我将其注释掉。 但是错误仍然发生。

什么会导致这种性质的JavaScript运行时错误?

我认为这不会有多大帮助,但这是添加JavaScript的代码。 请注意,在浏览器可以执行该页面中的任何JavaScript之前,整个页面都已呈现并发送到浏览器(这适用于@Arwind)。

clientScriptKey = "SetOriginalMileageObjectValues";
clientScriptText = string.Empty;

if (!clientScript.IsClientScriptBlockRegistered(clientScriptType, clientScriptKey))
{
    clientScriptText = "function GetFirstItineraryObjects()" + Environment.NewLine;
    clientScriptText += "            {" + Environment.NewLine;
    // a bunch of code
    clientScriptText += "            }" + Environment.NewLine + Environment.NewLine;
    clientScript.RegisterClientScriptBlock(clientScriptType, clientScriptKey, clientScriptText, true);
}

clientScriptKey = "CreateMileageDataOldValues";
clientScriptText = string.Empty;

if (!clientScript.IsClientScriptBlockRegistered(clientScriptType, clientScriptKey))
{
    clientScriptText = "GetFirstItineraryObjects();" + Environment.NewLine;
    clientScriptText += "GetFromLocationOldValues();" + Environment.NewLine;
    clientScriptText += "GetToLocationOldValues();" + Environment.NewLine;
    clientScriptText += "GetStartDateOldValues();" + Environment.NewLine;
    clientScript.RegisterStartupScript(clientScriptType, clientScriptKey, clientScriptText, true);
}

经过进一步检查,所有这四个函数调用(不仅是GetFirstItineraryObjects)都会引发相同的JavaScript错误,并且这些函数在运行时确实存在。

[ 评论 (由于我没有发表评论的权限)]:-请确保在页面中调用GetFirstItineraryObjects()函数的定义之前先对其进行加载。

以下是javascript部分周围可能缺少<script></script>标签的示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM