c# - 简单的 JavaScript 问题,在 IE 中返回 NULL,但在 FireFox 中工作!

标签 c# asp.net javascript vb.net ajax

我已将此函数正确链接到外部 .js 文件中...

 function SubmitAge(age, UpdatePanelID, HiddenAgeID) {
  $get(HiddenAgeID).value = age;
  __doPostBack(UpdatePanelID);
 }

并且我从 a href="#" ... html 标记的 onClick 中这样调用它

(标签已删除,请向右滚动,因为 stackoverflow 在显示简单内容方面难度最大,第 7 个显示相关编辑,感谢 stackoverflow)

a href="#" onclick="SubmitAge(24, 'ctl00_MainContent_arFrom_upAgeRange', 'MainContent_arFrom_HiddenAge')" runat="server" 24 /a 

但是,我收到此错误,并且它在 SubmitAge 函数的第一行被调用(与 $get(HiddenAgeID)... 等... 行)

Error:
Microsoft JScript runtime error: 'null' is null or not an object

我已在 Visual Studio .net(使用 vb.net 和 C# 的 vs2010 beta 2)中复制并粘贴了我的 WATCH 窗口,而 SubmitAge .js 函数中的执行中断了...

  age 53 Number
  UpdatePanelID "ctl00_MainContent_arTo_upAgeRange" String
  HiddenAgeID Undefined identifier Error

到底为什么 HiddenAgeId(就像 UpdatePanelID 一样明确传递)返回“未定义的标识符错误”???它让我困惑得没有空间移动!我是不是错过了什么?谢谢 - 非常感谢您的帮助或指点。

编辑:更新:事实证明,当我在 FireFox 中加载它时,它可以完美运行(应该如此),但在 Internet Explorer 中却出现错误,这不是浏览器兼容性问题,它也应该 在 IE 中可以工作,但事实并非如此!

最佳答案

这个方法是如何被调用的?您可能错误地只调用带有两个参数的方法(javascript 允许这样做,第三个参数在方法体内未定义)。或者您可能确实传递了一个未定义的值并且没有意识到它。

啊,您刚刚编辑了问题。在这种情况下,请检查 $get(HiddenAgeID) 返回什么,它可能返回 null,因为它找不到它。

关于c# - 简单的 JavaScript 问题,在 IE 中返回 NULL,但在 FireFox 中工作!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1996918/

相关文章:

c# - "HEAD"作为请求方法是否足以检查站点是否可达

c# - 带有 MongoDB .NET 驱动程序的 Azure DocumentDB : how to set id manually?

jquery - dropdownlist 的 selectedindexchanged 事件不适用于 jquery

jquery - 使用 Parsley.js 仅验证 ASP.net 页面上的一个表单

javascript - 使用 Javascript 发出 HTTP POST 身份验证基本请求

javascript - AngularJS : promise chain not deferring past 2nd function

c# - 对实例的序列化和反序列化使用react

c# - 有没有办法让 Newtonsoft.Create 在界面上调用您的自定义创建方法?

javascript - 将 jsmeter 用于我的 asp.net 应用程序

javascript - 比较 JavaScript 中的对象