0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Radio、Checkbox、Input组件的使用

汽车电子技术 来源:Java大联盟 作者:楠哥 2023-02-28 15:38 次阅读

Radio 单选框

Element UI 的 Radio 使用起来非常简单,直接使用 el-radio 标签即可,属性 v-model 表示该单选框绑定的对象,label 表示该单选框的值,代码如下所示:

<template>
  <div id="app">
    <el-radio v-model="radio" label="1">选项1<span class="hljs-name"el-radio>
    <el-radio v-model="radio" label="2">选项2<span class="hljs-name"el-radio>
  <span class="hljs-name"div>
<span class="hljs-name"template>


<script>
export default {
  data(){
    return{
      radio: '1'
    }
  }
}
class="hljs-name"script>

效果图:

图片

当我们选择不同的单选框时,会将该选项的 lable 值赋给 radio 对象,可以通过给单选框绑定点击事件来取值,代码如下:

<template>
  <div id="app">
    <el-radio v-model="radio" label="1" @change="change">选项1<span class="hljs-name"el-radio>
    <el-radio v-model="radio" label="2" @change="change">选项2<span class="hljs-name"el-radio>
  <span class="hljs-name"div>
<span class="hljs-name"template>


<script>
export default {
  data(){
    return{
      radio: '1'
    }
  },
  methods:{
    change(){
      console.log(this.radio)
    }
  }
}
class="hljs-name"script>

效果图:

图片

Checkbox 多选框

Checkbox 多选框使用 el-checkbox 标签来完成,我们结合一个常用案例来学习,创建一个多选框列表以及全选按钮,来选择需要的数据,代码如下:

<template>
  <div id="app">
    <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选<span class="hljs-name"el-checkbox>
    <div style="margin: 15px 0;"><span class="hljs-name"div>
    <el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange">
      <el-checkbox v-for="city in cities" :label="city" :key="city">{{city}}<span class="hljs-name"el-checkbox>
    <span class="hljs-name"el-checkbox-group>
  <span class="hljs-name"div>
<span class="hljs-name"template>


<script>
export default {
  data(){
    return{
      checkAll: false,
      checkedCities: ['上海', '北京'],
      cities: ['上海', '北京', '广州', '深圳'],
      isIndeterminate: true
    }
  },
  methods:{
    handleCheckAllChange(val) {
      this.checkedCities = val ? this.cities : [];
      this.isIndeterminate = false;
    },
    handleCheckedCitiesChange(value) {
      let checkedCount = value.length;
      this.checkAll = checkedCount === this.cities.length;
      this.isIndeterminate = checkedCount > 0 && checkedCount < this.cities.length;
    }
  }
}
class="hljs-name"script>

效果图:

图片

图片

图片

代码解释:

对数组 cities: ['上海', '北京', '广州', '深圳'] 进行遍历生成 4 个多选框,同时绑定点击事件 handleCheckedCitiesChange,该方法是用来判断是否为全选中的,this.checkAll = checkedCount === this.cities.length,如果当前全部选中数据的长度等于初始化数组 cities 的长度,则证明全部选中,再将判断结果赋值给 checkAll。

isIndeterminate 是用来控制全选按钮的样式的,如果当前选中的选项个数大于 0 并且小于初始化数组的长度,则表示有选中数据但没有全部选中,则将 isIndeterminate 的值改为 true,表示部分选中。

给全选按钮绑定了点击事件 handleCheckAllChange,该方法的参数 val 表示当前点击的是全选还是全不选,如果是全选则 val = true,全不选 val = false,handleCheckAllChange 方法内部通过判断 val 的值,设置当前选中的数据是全部还是空,同时再将 isIndeterminate 的值设置为 false,表示去掉部分选中样式。

Input 输入框

Input 为受控组件,它总会显示 Vue 绑定值。通常情况下,应当处理 input 事件,并更新组件的绑定值(或使用 v-model)。否则,输入框内显示的值将不会改变。不支持 v-model 修饰符,代码如下所示:

<template>
  <div id="app">
    <el-input v-model="input" placeholder="请输入内容"><span class="hljs-name"el-input>
  <span class="hljs-name"div>
<span class="hljs-name"template>


<script>
export default {
  data(){
    return{
      input: ''
    }
  }
}
class="hljs-name"script>

效果图:

图片

如果要修改尺寸,通过设置size 属性完成,可选值包括:large / medium / small / mini,代码如下所示:

"input" placeholder="请输入内容" size="large">class="hljs-name"el-input>
<div style="margin: 15px 0;">class="hljs-name"div>
"input" placeholder="请输入内容" size="medium">class="hljs-name"el-input>
<div style="margin: 15px 0;">class="hljs-name"div>
"input" placeholder="请输入内容" size="small">class="hljs-name"el-input>
<div style="margin: 15px 0;">class="hljs-name"div>
"input" placeholder="请输入内容" size="mini">class="hljs-name"el-input>

效果图:


图片


size只能修改 Input 的高度,如果要修改其宽度,最简单的方法就是在外层套一个div,通过设置div的宽度来实现修改 Input 宽度,代码如下所示:

<div style="width: 300px">  <el-inputv-model="input"placeholder="请输入内容"size="large">spanel-input>  <div style="margin: 15px 0;">div>  <el-inputv-model="input"placeholder="请输入内容"size="medium">spanel-input>  <div style="margin: 15px 0;">div>  <el-inputv-model="input"placeholder="请输入内容"size="small">spanel-input>  <div style="margin: 15px 0;">div>  <el-inputv-model="input"placeholder="请输入内容"size="mini">spanel-input>div>


效果图:


图片


使用 show-password 属性即可得到一个可切换显示隐藏的密码框,代码如下所示:

<el-input v-model="input" placeholder="请输入内容" size="medium" show-password>el-input>


效果图:


图片


可以通过prefix-iconsuffix-icon性在 Input 组件首部和尾部增加显示图标,代码如下所示:

<div style="width: 300px">  <el-inputv-model="input"placeholder="请输入内容"size="medium"suffix-icon="el-icon-date"prefix-icon="el-icon-user">spanel-input>  <div style="margin: 15px 0;">div>  <el-inputv-model="input"placeholder="请输入内容"size="medium"suffix-icon="el-icon-goods"prefix-icon="el-icon-user-solid">spanel-input>  <div style="margin: 15px 0;">div>  <el-inputv-model="input"placeholder="请输入内容"size="medium"suffix-icon="el-icon-phone"prefix-icon="el-icon-star-off">spanel-input>div>


效果图:


图片


maxlengthminlength是原生属性,用来限制输入框的字符长度,代码如下所示:

<div id="app">  <div style="width: 300px">    <el-input v-model="input" placeholder="请输入内容" size="medium" maxlength="10" show-word-limit>el-input>  div>div>


效果图如下所示:


图片


以上就是 Element UI 中 Radio、Checkbox、Input 组件的使用,下一篇教程楠哥将继续带领大家学习 Element UI 其他组件的使用,如果你觉得这篇教程对你有帮助,就帮楠哥点个赞吧,我们下期教程再见。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Model
    +关注

    关注

    0

    文章

    324

    浏览量

    24791
  • Elements
    +关注

    关注

    0

    文章

    6

    浏览量

    5267
收藏 人收藏

    评论

    相关推荐

    Car radio multimedia signal processor

    TDA7415Car radio multimedia signal processorFeatures■ 6-channel multimedia approach■ Fully
    发表于 12-12 14:55

    CHECKBOX_IsChecked(CHECKBOX_Handle hObj);函数读出来的值都是0

    我用gui建立了一个复选框,想通过CHECKBOX_IsChecked(CHECKBOX_Handle hObj);读取它在打勾和不打勾时的返回值,无论是选中还是不选中,读出来的值为什么都是0呢?刚接触ucGUI没多久,求大神指导
    发表于 04-17 00:55

    请问怎么在ucgui中增大checkbox

    请问一下,有谁知道在ucgui中怎么增大checkbox即复选框的大小吗
    发表于 07-19 04:36

    用UcguiBuilder4制作的CHECKBOX小工具例程分享!

    用UcguiBuilder4制作的CHECKBOX小工具例程,好用,值得推广!注意换肤前后有差异。EMWIN实验17+ CHECKBOX小工具.rar (3.82 MB )
    发表于 07-29 22:56

    什么是GNU Radio

    什么是GNU Radio? 开放的软件无线电平台有什么优势?
    发表于 08-02 08:13

    为什么创建checkbox时一定要使用GUI_ExecDialogBox?

    我是在学习checkbox时发现,为什么要创建checkbox时一定要使用GUI_ExecDialogBox创建才能运行,当使用GUI_CreateDialogBox创建时却是黑屏?1、用
    发表于 08-26 03:50

    鸿蒙应用开发input多选效果实现

    `这里用input组件敲了个案例Type为text时为输入框Type为button时为按钮Type为checkbox为多选按钮Type为radio为单选按钮 Html代码如下:&l
    发表于 04-27 10:41

    基于HarmonyOS Java UI,实现常见组件或者布局

    布局如何使用TabList、ListContainer、DatePicker、RadioContainer、Checkbox等常用组件硬件要求操作系统:Windows10 64位内存:8G及以上硬盘
    发表于 10-09 14:13

    请问在JS组件input中如何才能实现内容对齐?是否支持此样式属性?

    在开发中遇到一个问题,input输入框的内容需要进行右对齐,发现设置样式text-align根本起不到效果,官方开发文档也没有具体的参照。请问,在JS组件input中如何才能实现内容对齐(或左或中或右)?是否支持此样式属性?
    发表于 03-29 14:43

    HarmonyOS/OpenHarmony应用开发-声明式开发范式组件汇总

    类型基础组件Blank、Button、Checkbox、CheckboxGroup、DataPanel、DatePicker、Divider、Gauge、Image、ImageAnimator
    发表于 01-19 11:14

    HarmonyOS/OpenHarmony应用开发-ArkTSAPI组件总体分类与说明(上)

    按钮组件,可快速创建不同样式的按钮。 Toggle 组件提供勾选框样式、状态按钮样式及开关样式。 Checkbox 提供多选框组件,通常用于某选项的打开或关闭。 CheckboxGr
    发表于 08-15 11:14

    HarmonyOS实现表单页面的输入,必填校验和提交

    一. 样例介绍 本篇Codelab基于input组件、label组件和dialog组件,实现表单页面的输入、必填校验和提交: 为input
    发表于 09-05 14:34

    HarmonyOS/OpenHarmony原生应用-ArkTS万能卡片组件Radio

    单选框,提供相应的用户交互选择项。该组件从API Version 8开始支持。无子组件。 一、接口 Radio(options: {value: string, group: string}) 从
    发表于 10-13 17:21

    Radio Network Planning and Opt

    Radio Network Planning and Optimisation for UMTS:Radio Network Planning and Optimisation for UMTS
    发表于 08-21 10:41 20次下载
    <b class='flag-5'>Radio</b> Network Planning and Opt

    jquey操作checkbox,全选,单击,获取值,单击文字选中复选框

    jquey操作checkbox,全选,单击,获取值,单击文字选中复选框
    发表于 11-27 15:54 2016次阅读
    jquey操作<b class='flag-5'>checkbox</b>,全选,单击,获取值,单击文字选中复选框