我有一个我需要用来过滤表行的函数:
setFilterString("Filter");
但我有一个问题。我可以把它设置为
setFilterString("OrderID = 5");
并且它将过滤掉OrderID等于5的行,但是如果我尝试使用具有之前取值的变量
setFilterString("OrderID = vOrderID");
我收到错误“无效的列名'vOrderID'。” (因为vOrderID是可变的而不是列,我猜)
我在过滤器部分的某个地方看到输入类似("OrderID = '" & vOrderID & "'")
的内容,但它对我来说根本没有任何结果。甚至不会在控制台中抛出任何错误。
答案 0 :(得分:2)
JavaScript假设您只是将字符串传递给函数。如果你想使用变量,你应该试试这个:
setFilterString("OrderID = '" + vOrderID + "'"); // Results in OrderID = '5'
或
setFilterString("OrderID = " + vOrderID); // Results in OrderID = 5
取决于你的功能主体。
答案 1 :(得分:1)
使用+
代替&
:setFilterString("OrderID = " + vOrderID)
应该有效。
答案 2 :(得分:1)
使用“+”表示合并字符串:
setFilterString("OrderID = " + vOrderID)
您还可以尝试在字符串中使用$ {idvOrderID}:
setFilterString("OrderID = ${vOrderID}")
或者:
setFilterString(sprintf("OrderID = %s", vOrderID))
记住'和'之间的区别