输入错误:无效' in'操作数e在jquery 1.10.2v中

时间:2013-12-11 06:32:57

标签: javascript jquery

我已在我的应用程序中升级到jQuery 1.10.2,我的代码中出现错误(在$.each中)。

  '操作数e'中的

'无效'。

升级jQuery后出现此错误。在'this._currentFilterbarValue'中,有一个字符串值,我需要根据某些条件进行检查。

_CheckForSkipInput: function () {
    var IsSkip = false;
    if (this._currentFilterColumn.type == "String") {
        var stringSkipInput = new Array(">", "<", "=", "!");
        $.each(this._currentFilterbarValue, function (index, value) {
            if (jQuery.inArray(value, stringSkipInput) != -1)
                IsSkip = true;
        });
    }
    return IsSkip;
},

1 个答案:

答案 0 :(得分:4)

您正在尝试迭代this._currentFilterbarValue中的字符(这是一个字符串),因此jQuery.each()失败

  

$.each() 函数可用于迭代任何集合,   无论是对象还是数组。

所以试试

 var IsSkip = false;
 if (this._currentFilterColumn.type == "String") {
     var stringSkipInput = new Array(">", "<", "=", "!");
     for (var i = 0; i < s.length; i++) {
         if (jQuery.inArray(s[i], stringSkipInput) != -1) IsSkip = true;
     }
 }
 return IsSkip;
 },

另一种方法,

将字符串this._currentFilterColumn转换为 character array ,然后使用$.each()

进行迭代
var arr = this._currentFilterColumn.split("");  //Converting a string to char array
$.each(arr, function (index, value) {  //Now iterate the character array
  if (jQuery.inArray(value, stringSkipInput) != -1) IsSkip = true;
});