2016-04-15 57 views
1

我想在AngularJS中创建一个OData过滤器,该过滤器获取从我的视图传递的变量。使用AngularJS连接OData过滤器字符串的问题

我正在拼接拼接。特别是在开始和结束引号"。我研究并尝试了各种选项,如添加\等,但没有运气。

硬编码的过滤器应该是这样的:

var newFilter = "contains(ProductCode, " + "'" + vm.codeO + "')" + " and Price ge " + vm.priceGtO + " and Price le " + vm.priceLtO "\"" 

使用可变我的过滤器必须看:

$filter: "contains(ProductCode, 'GDN') and Price ge 5 and Price le 20" 

下面是使用变量我的过滤器从视图中传递一模一样。包括开始和结束的报价"

预先感谢您!

回答

1

您需要删除结尾"\""

要输出的字符串是foo而不是foo"

使用变量的我的过滤器必须看起来完全一样。包括起始和结束引号(“)。

这是你的错误,开始和结束的报价只是曾经说过,内部内容是一个字符串。你并不需要,如果你已经添加额外的引号。有一个字符串变量

而且,你还说没有必要的一些额外的串连试试这个:

var newFilter = "contains(ProductCode, '" + vm.codeO + "') and Price ge " + vm.priceGtO + " and Price le " + vm.priceLtO 
+0

谢谢ZANON谢谢你的澄清重新开始和结束的报价。 – onmyway