2013-08-28 30 views
0

如果我在Internet Explorer 8(未嘗試其他版本)中使用validationEngine,則會顯示此錯誤消息。在此消息被寫入這個問題是在線路714,第4個字符,這是哪裏的代碼:jQuery驗證引擎 - [IE8]「對象不支持此屬性或方法」

if(!required && !(field.val()) && field.val().length < 1 && rules.indexOf("equals") < 0) options.isError = false; 

我不知道問題出在哪裏

+0

我們也沒有,因爲沒有足夠的信息,並且看起來在這裏的第四個字符(「'required」)不是屬性訪問。你將不得不自己做一些基本的調試,並提出更多細節問題。 – Jon

+0

'規則'是一個數組嗎? –

+0

是的,規則是數組 – koubin

回答

3

.indexOf在< = IE8不支持。

作爲一種解決方法,您可以創建一個自定義的indexOf()實現,放置在可能爲IE8爲目標的集中式JS腳本文件中。例如,

// create self-invoking anonymous indexOf() function 
(function() { 
    if (!Array.prototype.indexOf) { 
     Array.prototype.indexOf = function (obj, start) { 
      for (var i = (start || 0), j = this.length; i < j; i++) { 
       if (this[i] === obj) { 
        return i; 
       } 
      } 
      return -1; 
     }; 
    } 
})(); 
+0

多數民衆贊成它。我發現這個函數與其他一些[這裏](http://stackoverflow.com/questions/2790001/fixing-javascript-array-functions-in-internet-explorer-indexof-foreach-etc)。非常感謝 – koubin

相關問題