语法错误:令牌'undefined'不是表达式[xx]的列null的主表达式,从[xx%]开始

时间:2017-02-15 07:15:41

标签: angularjs filter syntax-error special-characters

我有一个排序功能。如果列名包含%,则此功能不起作用。 例如columnName == "calldrop"我的函数有效但columnName == "calldrop%"我的函数不起作用,我收到此错误:

Syntax Error: Token 'undefined' not a primary expression at column null of the expression [RABPSHSDPAdrop%] starting at [RABPSHSDPAdrop%].

我不知道为什么。

$scope.applySorting = function (query, data) {
  var orderArray = query.sorting;
  // sortingArray == RABPSHSDPAdrop%
  var sortingArray = $.Enumerable.From(orderArray).Select(function (item) { return item.replace('data.', ''); }).ToArray();
  var sortedData = $.Enumerable.From($filter('orderBy')(data, sortingArray)).ToArray();  //broken here
  return sortedData;  
};

如何解决此案? 请。

1 个答案:

答案 0 :(得分:0)

我编辑了这部分及其工作:

var sortingArray = $.Enumerable.From(orderArray).Select(function (item) { return item.replace('data.', '\'') + "'"; }).ToArray();

你必须使用这个:''