Prototype.js 错误 - “undefined”为空或不是对象
2011-06-20
5565
我在 Prototype.js 中收到以下错误
'undefined' is null or not an object line 5557 char 5
这是:
var respondersForEvent = registry.get(eventName);
if (Object.isUndefined(respondersForEvent)) {
respondersForEvent = [];
registry.set(eventName, respondersForEvent);
}
我该如何修复它?
这是给出错误的代码:
Event.observe(window, "load", function () {
Event.observe("query", "keypress", function (e) {
if (e.keyCode == Event.KEY_RETURN) {
search();
}
});
});
它说错误发生在按键上。
2个回答
您有 ID 为“query”的元素吗?请注意,它不能只具有
name
属性 - 对于您提供的代码,它必须具有“query”作为
id
属性。有效示例为:
<input type="text" id="query" />
Samir Talwar
2011-07-09
遇到同样的问题,请查找重复的 javascript 代码。就我而言,我两次包含了 Magento 的迷你搜索表单及其相关的 javascript:
<script type="text/javascript">
//<![CDATA[
var searchForm = new Varien.searchForm('search_mini_form_new', 'search', '<?php echo $this->__('Search entire store here...') ?>');
searchForm.initAutocomplete('<?php echo $this->helper('catalogsearch')->getSuggestUrl() ?>', 'search_autocomplete');
//]]>
</script>
希望这能帮助遇到同样问题的人。
ThreeCheeseHigh
2011-12-22