有没有办法删除scriptaculous自动完成对象?

时间:2012-12-17 23:05:18

标签: javascript autocomplete prototypejs scriptaculous



我使用scriptaculous自动完成来创建一个可编辑字段的大页面,字段数量是动态的,因此我创建一个数组来保存所有自动完成对象。

然后,我需要允许用户在页面的每个位置添加一个字段,因此,我创建一个javascript函数,重做文本字段的序列,并重新创建所有自动完成。

但是有一个问题,即旧的自动完成功能也出现在页面上,即使将数组设置为零长度,旧的自动完成功能也是如此。

有没有办法完全删除原型对象?

2 个答案:

答案 0 :(得分:3)

  • autocompleter保存对输入字段和更新程序的引用(带有可能选择的弹出元素)
  • 输入字段和更新程序保存对事件观察者的引用(自动完成对象中的方法)

至少需要存储在autocompleter对象中的清晰引用:

autocompleter.element = null;
autocompleter.update = null;

答案 1 :(得分:2)

要删除DOM引用,请执行

bigAutoCompleteObject = null;