axure制作下拉列表模糊查询

Axure 8.0 下拉检索原型设计
本文详细介绍了使用Axure 8.0创建下拉检索功能的原型设计过程,包括元件搭配、实现逻辑及具体操作步骤,演示了如何通过输入框、中继器和动态面板实现姓名下拉检索的效果。

Axure的版本8.0

一、实现的功能及展示效果:对姓名的下拉检索;

二、元件搭配

1、输入框;

2、中继器;

3、标签;

三、实现逻辑
1、默认下拉列表是隐藏;
2、搜索框内的文字长度大于等于1,并且搜索的文字能够模糊匹配下拉列表中的值,显示下拉列表;
3、鼠标悬停在下拉框文字上,改变文字的背景颜色;
4、单击选中下拉列表文字将文字赋值到搜索框,同时隐藏下拉列表;
5、搜索框内的文字长度小于1,隐藏下拉列表;

四、操作步骤
1、输入框,在元件库中选择一个输入框,取名为“搜索框”;


2、中继器,选择一个中继器,取名为”数据“,并在右下角给中继器设置数据内容;

3、双击中继器面板,在打开的新的页面通过复制设置两个文本输入框;

4、双击Case1,设置中继器中表格显示的内容;

5、设置表格中两列的值,第一列是显示id,第二列是显示name;

6、将中继器转换为动态面板;

7、双击动态面板,再双击”State1“;至此所有基础准备工作已经完成;

8、查看目前的展示效果;

9、在初始化时将下拉列表和数据设置为隐藏;

选中动态面板,双击右边的”OnLoad“事件,进入到事件编写界面;

 

设置下拉列表为隐藏;

10、设置事件触发条件,当搜索框内的文字长度大于等于1时,触发事件;

 

选中输入框,在右边双击文本改变事件,弹出文本改变事件对话框;

11、设置事件的响应内容。增加中继器过滤器,并设置过滤规则;

过滤规则的设置大概意思是:下拉列表中的数据包含搜索框中的文字,其中用到了函数[[item.name.indexOf(LVAR1)>-1]];

12、设置展示下拉列表。当搜索框的文字长度大于等于1,并且满足过滤器规则,就显示下拉列表;

13、目前效果展示如下,默认下拉列表是隐藏,当在输入框中输入文字”张“,就展示下拉列表中包含张的数据项;

14、设置鼠标悬停在下拉列表时,改变下拉列表文字的背景颜色和文字颜色;

15、单击选中下拉列表文字将文字赋值到搜索框,同时隐藏下拉列表;

设置下拉列表数据项的单击事件,将下拉列表中的值赋值到搜索框;

同时隐藏下拉列表;

16、搜索框内的文字长度小于1,隐藏下拉列表;

选中输入框,增加文本改变事件;

设置事件触发条件,当搜索文本框内的文字长度小于1时触发;

设置下拉列表隐藏;

至此完成了整个下拉检索的原型制作;

<think>我们正在参考用户提供的引用资料,这些资料是关于在Axure实现下拉列表框的模糊查询功能。根据引用[2]、[3]和[4],实现模糊查询的关键在于使用中继器(Repeater)和函数`indexOf`来筛选包含输入关键词的数据项。实现步骤概述如下(具体步骤可以参考引用资料中的详细描述):1.使用输入框作为搜索框,中继器作为存储下拉选项的数据源。2.为中继器设置一列数据(例如Column0),存放所有下拉选项。3.当输入框的文字改变时(即触发“文本改变时”事件),根据输入框的内容对中继器进行筛选。-利用函数`[[Item.Column0.indexOf(LVAR1)!=-1]]`进行筛选,其中:-`Item.Column0`表示中继器中的数据项(即下拉选项的文本)。-`LVAR1`是输入框中的文本(通过局部变量获取)。-`indexOf(LVAR1)`用于检查输入框文本是否出现在数据项中,如果返回的值大于-1,则表示包含,该数据项会被显示。4.根据输入框的文本长度来控制下拉列表(即中继器)的显示或隐藏:-当输入框有文本(长度>=1)时,显示下拉列表(中继器)并执行筛选。-当输入框没有文本(长度<1)时,隐藏下拉列表。5.为下拉列表中的项添加交互事件:点击某一项时,将其文本赋值给输入框,并隐藏下拉列表。此外,引用中还提到了一些细节,如设置选中效果、鼠标移入效果等。现在,我们按照上述逻辑,详细说明实现方法:</think> ### Axure 下拉列表框模糊查询实现方法 在 Axure实现下拉列表框的模糊查询功能,核心逻辑是通过**输入框监听文本变化**、**中继器筛选数据**和**条件判断显示/隐藏菜单**。以下是详细步骤: --- #### **一、基础元件准备** 1. **文本框**:作为搜索输入框,命名为 `文本框`。 2. **中继器**:存储下拉数据项,命名为 `数据中继器`。 - 添加数据列(例如 `Column0`),存放下拉选项(如省份名称)。 3. **动态面板**:将中继器包裹在动态面板内,命名为 `下拉菜单面板`,初始状态为隐藏。 --- #### **二、关键交互设置** 1. **文本变化筛选**(核心) - 选中 `文本框` → 添加事件 **【文本改变时】**: - 条件:`[[文本框.text.length >= 1]]`(有输入内容) - 动作: ``` 筛选 数据中继器 规则:[[Item.Column0.indexOf(LVAR1) >= 0]] 局部变量 LVAR1 = 文本框.text ``` - *说明*:`indexOf()` 函数检测选项是否包含输入的关键词(`>=0` 表示包含)。 2. **显示/隐藏下拉菜单** - 新增条件分支: - 若 `文本框.text.length >= 1` → 显示 `下拉菜单面板` - 若 `文本框.text.length = 0` → 隐藏 `下拉菜单面板` 3. **点击选项填充输入框** - 选中中继器内的选项项 → 添加事件 **【点击时】**: ``` 设置文本:文本框 = [[Item.Column0]] 隐藏 下拉菜单面板 ``` 4. **鼠标悬停效果** - 为中继器项添加 **【鼠标悬停时】** → 设置背景色高亮。 --- #### **三、模糊查询逻辑详解** 1. **筛选原理**: - `[[Item.Column0.indexOf("北京")]]` 返回值: - `-1` → 不包含"北京" - `≥0` → 包含"北京"(如"北京市"返回 `0`)[^4][^2]。 2. **模糊匹配**: - 输入"北" → 显示"北京"、"河北省"(均含"北"字)[^3]。 --- #### **四、最终效果验证** | 操作 | 效果 | |---------------------|--------------------------| | 输入关键词"广" | 显示"广东"、"广西"等选项 | | 清空输入框 | 隐藏下拉菜单 | | 点击选项"上海市" | 输入框自动填充"上海市" | > **提示**:需在动态面板中设计中继器布局(如列表样式),并确保中继器数据项绑定正确[^2][^3]。 --- ### 相关问题 1. **如何优化模糊查询响应速度?** (例如:减少中继器数据量/增加防抖) 2. **能否实现多级联动的下拉模糊查询?** (如:先选省份再模糊搜索城市) 3. **Axure函数 `indexOf()` 是否区分大小写?如何实现不区分?** [^1]: Axure基础元件命名规范 [^2]: 模糊查询函数逻辑实现 [^3]: 条件触发显示/隐藏机制 [^4]: 中继器数据筛选公式
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值