2011-11-12 61 views
2

我遇到了一个ajax脚本的问题,该脚本根据数据库中的区域表检查邮编以查找邮政编码涉及的区域,然后更新区域选择列表此信息。未捕获TypeError:无法读取null的属性“长度”

ajax脚本完全没有问题,因为它可以在另一个页面上工作得很好。一个特定的页面(在我无法访问的管理区域中)出现问题,我的调试器显示“Uncaught TypeError:无法读取属性长度为null”,当触发对远程脚本的调用时。

我对此感到莫名其妙,因为我对于它暗示什么是空的一无所知。我明白它在说什么,显然它不能读取null的长度,但我看不到它可能是空的。它可能会被赋予一个空字符串,但空字符串不会在其他页面上触发此错误,并且空字符串不为空。

我知道我还没有付出太多的努力,但如果你能提供更多的调试建议,那就太好了。

谢谢。

+3

您可以使用浏览器的调试器,找到触发错误的行,在其中放置断点,并在执行时查看所有变量的值。 –

+1

请显示Ajax调用的代码。 – nnnnnn

回答

5

Peter Olson的建议非常好,我已经探索并发现了许多内置于Chrome中的强大调试工具(我确信Firebug等具有相同的功能)。

原来,脚本在没有Id的元素上使用getElementById。因此,为什么脚本在其他页面上正常工作(其他页面上的输入有ID)

我已经解决了现在的问题。

非常感谢。

相关问题