JS:如何使用变量过滤表



我有一个函数,我需要用它来过滤表行:

setFilterString("Filter");

但我有一个问题。我可以将其设置为

setFilterString("OrderID = 5");

它会过滤掉 OrderID 等于 5 的行,但如果我尝试使用之前取值的变量,如下所示

setFilterString("OrderID = vOrderID");

我收到错误"列名称无效的'vOrderID'"。(因为 vOrderID 是变量而不是列,我猜(

我在过滤器部分的某个地方看到输入了这样的东西("OrderID = '" & vOrderID & "'")但它对我来说根本没有任何结果。甚至不会在控制台中抛出任何错误。

JavaScript 假设你只是将一个字符串传递给函数。如果要使用该变量,则应尝试以下操作:

setFilterString("OrderID = '" + vOrderID + "'"); // Results in OrderID = '5'

setFilterString("OrderID = " + vOrderID); // Results in OrderID = 5

取决于函数的主体。

使用+而不是&setFilterString("OrderID = " + vOrderID)应该可以工作。

使用"+"表示合并字符串:
setFilterString("OrderID = " + vOrderID)

您也可以尝试在字符串
中使用 ${idvOrderID}:setFilterString("OrderID = ${vOrderID}")

或者:
setFilterString(sprintf("OrderID = %s", vOrderID))

记住 ' 和 " 之间的区别