在Firefox中禁用后,表单元素永远不会启用

时间:2013-01-22 09:35:55

标签: javascript forms firefox element

我在申请中遇到了一个奇怪的问题。当用户单击应用程序中的刷新按钮时,表单元素将被禁用但永远不会启用。这有时只会发生,而且只在firefox中发生。以下是用于禁用表单元素的javascript代码段。

util.Document.setDisabledOnFormElements = function(disabled, baseElement) {
  if (util.Browser.is(util.Browser.IE)) {
    //disabled property is inherited in ie.
    baseElement.disabled = disabled;
  } else {
    var dels = util.Document.DISABLEABLE_FORM_ELEMENTS;
    var els;
    for (var h = 0, hLength = dels.length; h < hLength; h++) {
      //disabled property is not inherited, so have to set for disableable elements explicitly.
      els = baseElement.getElementsByTagName(dels[h]);
      for (var j = 0, jLength = els.length; j < jLength; j++) {
        els[j].disabled = disabled;
        els[j] = null;
      }
      els = null;
    }
    dels = null;
  }
};

这个setDisabledOnFormElements函数由for循环调用,表单中的所有元素都作为参数给出。 'disabled'参数是一个布尔对象。它告诉您是否禁用元素或启用元素。

在IE和Chrome中,这非常好用。但是在FF表单中,单击刷新按钮后不会启用元素(这不是浏览器的刷新按钮)。有人知道这里的问题吗?

0 个答案:

没有答案