我正在使用outystems平台开发应用程序。在那里我正在使用输入框搜索项目,我想在输入框中输入项目名称时搜索项目,搜索结果应该显示而不点击按钮。在Outsystems中如何做到这一点请帮帮我..
答案 0 :(得分:4)
你可以很容易地做你想做的事。我们可以通过两个步骤拆分你想要做的事情:
输入框有一个名为" Destination"在" On Change"部分。在该属性中,您可以分配一个操作(将操作想象为Java或.NET方法)。正如您所知,这将是您更改输入框文本时将运行的操作;
在分配给"目的地"的行动中属性,您应该使用"刷新数据"重新运行搜索。小部件并选择查询。然后,您必须刷新屏幕中的元素。为此,您可以使用" Ajax Refresh"窗口小部件,然后选择显示结果的窗口小部件。
示例:让我们假设您有一个名为" City"的数据实体。代表......一个城市。在屏幕上,您有一个输入框,位于"表记录"与城市列表。当您在输入框中键入时,"表记录"使用分配给输入框的变量值进行过滤。
为实现此目的,您需要为"目的地"输入框的属性(让我们调用动作" OnChange")。在" OnChange"操作,您重新运行用于显示城市名称的聚合(并且具有条件 City.Name,如InputBox_Var +"%" ),使用"刷新数据& #34;
之后,你将" Ajax Refresh" "刷新数据"旁边的小部件,并选择聚合(确保聚合具有名称,否则您无法选择它)。
它应该有用!
P.S。:我做了一个示例oml http://www.filedropper.com/livefilter
稍后,您可以更好地了解正在发生的事情以及您可以在此处执行的操作:
在数据查询中过滤结果 - > http://www.outsystems.com/help/servicestudio/9.0/Using_Data/aggregates/Filtering_Results.htm
答案 1 :(得分:-1)
您必须使用Ajax调用才能执行此操作。
在您的输入框中,Onchange属性只分配一个屏幕操作,在该屏幕操作中使用refresh Data和ajax refresh来刷新数据。
在准备中 - >在您的表源记录聚合中使用过滤器
e.g。 name like "%"+searchTerm+"%"
这样做。
希望这会有所帮助。