【Axure教程】通过文本框维护下拉列表选项

news2024/12/23 18:13:00

下拉列表(Dropdown List)是一种常见的用户界面元素,用于提供一组选项供用户选择。它通常以一个展开的列表形式出现,用户可以点击或选择列表中的一个选项。一般来说,他的选项值是由系统代码组成的,所以一般是不能维护里里面的选项值,但是经常会出现需要动态维护下拉列表的选项这种需求。所以今天就教大家如何通过输入框动态维护下拉列表里面的选项值。

一、效果展示

  1. 在输入框里新增或者修改选项,维护后下拉列表选项和输入框里的一致
  2. 选项可以手动修改,也可以批量复制到输入框

【原型预览及下载地址】

https://axhub.im/ax9/09b38389df30358f/#g=1&p=能在输入框里自由编辑选项的下拉列表-js版

二、制作教程

1. 下拉列表的原理

我们如果用axure自带的下拉列表,他只能在编辑界面修改下拉列表的值,没有办法在演示界面修改。但是如果我们知道下拉列表的原型,就可以通过修改代码的方式,实现在演示界面动态维护下拉列表的效果

我们知道axure演示是通过浏览器来实现的,归根到底就是html、js、css代码,这个在以前的js调用的文章里也有详细讲解,所以我们可以通过代码调用,调用下拉列表,那下拉列表的html代码其实就是:

<select>

  <option value=”值”>选项1</option>
  <option value=”值”>选项2</option>
  <option value=”值”>选项3</option>
  <option value=”值”>选项4</option>

</select>

可以看到其实他的选项值就是  <option value=”值”>选项1</option>,所以我们要对输入框里的文本值做变换,变换成上面的格式,然后在修改代码,这样就可以替换下拉列表里的选项值了

2. 文本框里文本的处理

那我们怎样对文本框里的值进行处理呢?如果可以有特殊标记的话,例如用每个选项用【】包围,这样我们用replace函数就可以实现了,  将【的值替换成<option value=”值”>,将】的值替换成</option>,但是这种方式会限制了用户输入,必须【选项】这种格式来输入,这样就很不方便了。

所以我们就要比较麻烦对函数就行分割了,首先我们要准备几个文本,用来记录和处理文本,我们可以用slice函数,slice函数可以去指定段落的文本出来,例如取前三位就把选项1取出来了,这样我们把选项1组成新的文本,加上以前一后,就变成  <option value=”值”>选项1</option>,然后继续取选项2,直到输入框里的值都取完。

但是这里还有一个问题,用户输入每个选项的长度值是未知的,我们怎样去确定要取多少位呢?这里我们可以用第二个函数indexOf来确认,这个函数可以找出指定内容第一次出现的位置,那我们只需要寻找换行的位置,提取换行之前的内容,再将文本以前一后添加,这样就可以将字符转为对应的格式。

那我们只需要写个循环,先提取第一行的选项1,将格式转为  <option value=”值”>选项1</option>,然后在去第二行的选项2,将格式转为<option value=”值”>选项2</option>,在通过设置文本,将他和前面记录的<option value=”值”>选项1</option>合在一起,这里用在target.text后面增加新提取合并的文本即可。

上面是存在换行的条件,如果已经是最后一行,就没有换,那我们就判断输入框是否为空,那如果不为空,最后一个选项就是输入框里的文本你,我们直接将他提取合并即可。

那如果值为空,我们就提取完成结束循环,结束循环我们用设置文本的交互,将提取完成的选项值设置到通过设置文本,设置到<select></select>里面,然后触发js重新调用输入框就可以了。

到这里我们基本级完成了,如果需要调整下拉列表的尺寸,我们也可以通过width和height字段修改,例如宽200高30的输入框,我们就可以写成这样<select style=”width: 200px; height: 30px;” >

这样我们就制作完成了通过文本框维护下拉列表选项的原型模板了,下次使用时,只需要复制粘贴,修改输入框里的选项文字,即可自动实现动态维护下拉列表选项的效果了,是不是很方便呢?当然,后续你们也可以根据需要,增加一些效果,例如把输入框放在弹窗里,通过按钮显示弹窗,再修改下拉列表的值。

那以上就是本期教程的全部内容,感兴趣的同学们可以动手试试哦,感谢您的阅读,我们下期见。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/568480.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

leecode每日一题 1080 根到叶路径上的不足节点

题目描述 给你二叉树的根节点 root 和一个整数 limit &#xff0c;请你同时删除树中所有 不足节点 &#xff0c;并返回最终二叉树的根节点。 假如通过节点 node 的每种可能的 “根-叶” 路径上值的总和全都小于给定的 limit&#xff0c;则该节点被称之为 不足节点 &#xff0…

接口测试神器, ApiKit ,亲测好用

自己关注的公众号比较多&#xff0c;之前有收到过有关 ApiKit 的文章&#xff0c;自己也是大致看看,还没有用过它&#xff01; 最近看到比较多有关 ApiKit 的文章&#xff0c;所以自己就花了点时间去研究它&#xff0c;使用完后发现确实比Postman功能更强大&#xff0c;界面也…

Redis7实战加面试题-基础篇(Redis复制(replica),Redis哨兵(sentinel),Redis集群(cluster))

Redis复制(replica) 就是主从复制&#xff0c;master以写为主&#xff0c;Slave以读为主。当master数据变化的时候&#xff0c;自动将新的数据异步同步到其它slave数据库。 能干嘛&#xff1a;读写分离&#xff0c;容灾恢复&#xff0c;数据备份&#xff0c;水平扩容支撑高并发…

【阿里云】阿里云OSS对象存储— 开通OSS服务、搭建OSS环境、快速入门

目录 一、开通OSS服务 二、搭建OSS环境 1、创建Bucket存储空间 2. 创建文件夹上传图片 3. RAM 访问控制 三、快速入门 1.下载SDK 2.创建存储空间[可选] 3.上传图片 一、开通OSS服务 二、搭建OSS环境 1、创建Bucket存储空间 选择 Bucket列表&#xff0c;进行Bucket创建…

LeetCode54 螺旋矩阵

给你一个m行n列的矩阵matrix&#xff0c;请按照顺时针螺旋顺序&#xff0c;返回矩阵中的所有元素。 示例1 输入&#xff1a; matrix [[1,2,3],[4,5,6],[7,8,9] 输出&#xff1a; [1,2,3,6,9,8,7,4,5] 示例2 输入&#xff1a; matrix [[1,2,3,4],[5,6,7,8],[9,10,11,12]] 输出…

新冠又临“涨潮”期,看我AI显身手

#疫情#北京时间5月24日&#xff0c;北京市卫生健康委发布2023年第20周疫情周报。报告显示&#xff0c;2023年第20周全市共报告法定传染病14种25544例&#xff0c;死亡1例。报告病例数居前5位的病种依次为:新型冠状病毒感染、其它感染性腹泻病、流行性感冒、肺结核和病毒性肝炎&…

chatgpt赋能python:Python的shutil模块:探讨删除文件和目录的方法

Python的shutil模块&#xff1a;探讨删除文件和目录的方法 Python是一种高级编程语言&#xff0c;拥有大量的标准库&#xff0c;其中shutil模块是处理文件的一种非常强大的模块。shutil提供了多种方式来复制、移动和删除文件和目录。 在本文中&#xff0c;我们将探讨Python的…

英特尔13代桌面CPU平台安装ubuntu20.04LTS记录

安装环境一&#xff1a; i7-13700K 华硕Z790-P 16X2GB内存 华硕 TUF 3070 O8G安装环境二&#xff1a; i5-13400 华硕B760M-A D4 8x2GB内存 UHD730核显安装系统&#xff1a; ubuntu20.04LTS(首先用光驱安装失败&#xff0c;后面用U盘更换ubuntu22.04.2LTS成功) 因为…

用工业显微镜来观察生物细胞

尝试用工业显微镜来观察生物细胞&#xff0c;成像质量不是很好&#xff0c;但感觉还是能看一下。专业生物用显微镜真的太贵了。 软件&#xff1a;JCameraPro可以在这下载&#xff1a;www.jfirmware.com 摄像机&#xff1a;OPLENIC Cam的某个OEM版。 OPLENIC Cam很多OEM版&am…

SocketException: 由于目标计算机积极拒绝,无法连接。

本文只有解决思路没有具体方法&#xff08;因为错误不一定是因为这个&#xff09;。 在做.NETWebService的时候遇到了个问题&#xff0c;这是在用本地提供WebService服务以后出现的错误。 我的解决办法是把连接的服务删了在重连就好了&#xff0c;挺奇怪的。在网上查的方法各式…

Vue + Axios - HTTP POST 请求示例 (外网地址)

从 npm 安装 axios 使用npm CLI&#xff1a;npm install axios 使用yarn CLI&#xff1a;yarn add axios app.vue文件: <template><Postrequest/> </template><script> import Postrequest from ./components/Postrequest.vue; export default {nam…

Helm部署高可用rabbitmq k8s 镜像集群

前提条件&#xff1a;k8s集群、harbor私服、helm、storage Class 安装部署 添加bitnami仓库并查找redis helm repo add bitnami https://charts.bitnami.com/bitnami ​ helm repo update [kmningk8s-register-node ~]$ helm search repo rabbitmq NAME …

Linux第一节

linux用的分区格式是 XFS EXT4 nmtui //网络使用文字显示的命令 //进去后修改IP信息 常用SSH管理工具 PC端: Mobaxterm、PuttyWinSCP、XshellXftp、SecureCRT等手机端:iTerminal、华为云APP、阿里云APP等 LINUX中补全命令&#xff0c;按两次tab键 在登录界面&#xff0c;al…

40G QSFP+ LR4光模块两种类型的概述:CWDM4 vs PSM4

40G QSFP LR4光模块被广泛用于40G网络中&#xff0c;它包含40G QSFP LR4 CWDM4光模块和40G QSFP LR4 PSM4光模块两种类型。前者用来连接波分复用链路&#xff0c;后者用来连接并行单模光纤链路&#xff0c;但是这两种模块之间有什么区别呢&#xff1f;下文易天光通信&#xff0…

线程的状态,多线程带来的风险,synchronized关键字及死锁问题

目录 状态 线程的意义 多线程带来的风险——线程安全✅ 线程安全的概念 线程不安全的原因 抢占式执行&#xff0c;随机性调度 修改共享数据 原子性->加&#x1f512; 可见性 指令重排序 解决线程不安全问题&#xff08;学完线程再总结&#xff09; synchronized关键字——监…

使用electron套壳vue实现跨平台桌面应用

electron和vue是什么就不用多说了&#xff0c;前端都知道 先展示一波demo 传送门 前提条件 要有一个vue项目&#xff0c;老项目跳过 vue create hello-world改造vue项目 在根目录新建一个background.js文件&#xff0c;也可以叫其他名字&#xff0c;作为package.json的main…

C Primer Plus第五章编程练习答案

学完C语言之后&#xff0c;我就去阅读《C Primer Plus》这本经典的C语言书籍&#xff0c;对每一章的编程练习题都做了相关的解答&#xff0c;仅仅代表着我个人的解答思路&#xff0c;如有错误&#xff0c;请各位大佬帮忙点出&#xff01; 1.编写一个程序&#xff0c;把用分钟表…

微信小程序---表格的制作并展示云数据库中的数据

微信小程序并没有表格组件&#xff0c;可能是官方考虑到&#xff0c;在前端开发中&#xff0c;表格的嵌套性太多&#xff0c;用DIV代码会比较简洁就没有实现吧。没有现成的组件可以使用&#xff0c;针对这个问题&#xff0c;目前有两种解决方案&#xff1a; 1&#xff09;内嵌…

怎么发表CCF期刊?CCF期刊有什么不同之处? - 易智编译EaseEditing

发表CCF期刊&#xff0c;可以参考一下步骤&#xff1a; 选择目标期刊&#xff1a; 首先选择一个适合自己的目标期刊&#xff0c;可以是CCF推荐的高水平期刊&#xff0c;也可以是其他被广泛认可的期刊。 撰写论文&#xff1a; 根据目标期刊的要求&#xff0c;撰写论文。确保论…

「恋爱事务」NFT 作品集

「恋爱事务 (Love Affairs)」服装 NFT系列允许玩家在体验中使用 Opera Garnier 歌剧院的 T台大厅&#xff0c;并参与互动竞赛。参与 The Sandbox 元宇宙首个以爱情为主题的概念时装秀&#xff01; 该系列已于 5 月 22 日晚上 11 点在 The Sandbox 市场平台上线。 NFT 系列介绍 …