我在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();
}
});
});
它表示错误在按键上。
答案 0 :(得分:1)
你有一个ID为“查询”的元素吗?请注意,它不能只有name
属性 - 对于您提供的代码,它必须具有“{”作为id
属性。一个有效的例子是:
<input type="text" id="query" />
答案 1 :(得分:0)
遇到同样的问题,请查找重复的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>
希望这可以帮助任何有同样问题的人。