日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

010_Select选择器

發布時間:2025/5/22 编程问答 12 豆豆
生活随笔 收集整理的這篇文章主要介紹了 010_Select选择器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. Select選擇器

1.1. 當選項過多時, 使用下拉菜單展示并選擇內容。

1.2. Select屬性

參數

說明

類型

可選值

默認值

value / v-model

綁定值

boolean / string / number

multiple

是否多選

boolean

false

disabled

是否禁用

boolean

false

value-key

作為value唯一標識的鍵名, 綁定值為對象類型時必填

string

value

size

輸入框尺寸

string

medium/small/mini

clearable

是否可以清空選項

boolean

false

collapse-tags

多選時是否將選中值按文字的形式展示

boolean

false

multiple-limit

多選時用戶最多可以選擇的項目數, 為0則不限制

number

0

name

select input的name屬性

string

autocomplete

select input的autocomplete屬性

string

off

placeholder

占位符

string

請選擇

filterable

是否可搜索

boolean

false

allow-create

是否允許用戶創建新條目, 需配合filterable使用

boolean

false

filter-method

自定義搜索方法

function

remote

是否為遠程搜索

boolean

false

remote-method

遠程搜索方法

function

loading

是否正在從遠程獲取數據

boolean

false

loading-text

遠程加載時顯示的文字

string

加載中

no-match-text

搜索條件無匹配時顯示的文字, 也可以使用slot="empty"設置

string

無匹配數據

no-data-text

選項為空時顯示的文字, 也可以使用slot="empty"設置

string

無數據

popper-class

Select下拉框的類名

string

reserve-keyword

多選且可搜索時, 是否在選中一個選項后保留當前的搜索關鍵詞

boolean

false

default-first-option

在輸入框按下回車, 選擇第一個匹配項。需配合filterable或remote使用

boolean

false

popper-append-to-body

是否將彈出框插入至body元素。在彈出框的定位出現問題時, 可將該屬性設置為false

boolean

true

automatic-dropdown

對于不可搜索的Select, 是否在輸入框獲得焦點后自動彈出選項菜單

boolean

false

1.3. Select事件

事件名稱

說明

回調參數

change

選中值發生變化時觸發

目前的選中值

visible-change

下拉框出現/隱藏時觸發

出現則為true, 隱藏則為false

remove-tag

多選模式下移除tag時觸發

移除的tag值

clear

可清空的單選模式下用戶點擊清空按鈕時觸發

blur

當input失去焦點時觸發

(event: Event)

focus

當input獲得焦點時觸發

(event: Event)

1.4. Select Slots

name

說明

Option組件列表

prefix

Select組件頭部內容

empty

無選項時的列表

1.5. Option Group屬性

參數

說明

類型

默認值

label

分組的組名

string

disabled

是否將該分組下所有選項置為禁用

boolean

false

1.6. Option屬性

參數

說明

類型

默認值

value

選項的值

string/number/object

label

選項的標簽, 若不設置則默認與value相同

string/number

disabled

是否禁用該選項

boolean

false

1.7. 方法

事件名稱

說明

focus

在Input獲得焦點

blur

使input失去焦點, 并隱藏下拉框

2. Select選擇器例子

2.1. 使用腳手架新建一個名為element-ui-select的前端項目, 同時安裝Element插件。

2.2. 編輯index.js?

import Vue from 'vue' import VueRouter from 'vue-router' import Select from '../components/Select.vue' import MultipleSelect from '../components/MultipleSelect.vue' import SearchSelect from '../components/SearchSelect.vue' import RemoteSearchSelect from '../components/RemoteSearchSelect.vue' import CreateSelect from '../components/CreateSelect.vue'Vue.use(VueRouter)const routes = [{ path: '/', redirect: '/Select' },{ path: '/Select', component: Select },{ path: '/MultipleSelect', component: MultipleSelect },{ path: '/SearchSelect', component: SearchSelect },{ path: '/RemoteSearchSelect', component: RemoteSearchSelect },{ path: '/CreateSelect', component: CreateSelect } ]const router = new VueRouter({routes })export default router

2.3. 在components下創建Select.vue

<template><div><h1>基礎用法-適用廣泛的基礎單選</h1><h4>v-model的值為當前被選中的el-option的value屬性值。</h4><el-select v-model="base_value" placeholder="請選擇"><el-option v-for="item in base_options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select><h1>有禁用選項</h1><h4>在el-option中, 設定disabled值為true, 即可禁用該選項。</h4><el-select v-model="disabled_value" placeholder="請選擇"><el-option v-for="item in disabled_options" :key="item.value" :label="item.label" :value="item.value" :disabled="item.disabled"></el-option></el-select><h1>禁用狀態-選擇器不可用狀態</h1><h4>為el-select設置disabled屬性, 則整個選擇器不可用。</h4><el-select v-model="value" disabled placeholder="請選擇"><el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select><h1>可清空單選</h1><h4>為el-select設置clearable屬性, 則可將選擇器清空。需要注意的是, clearable屬性僅適用于單選。</h4><el-select v-model="clearable_value" clearable placeholder="請選擇"><el-option v-for="item in clearable_options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select></div> </template><script> export default {data () {return {base_options: [{value: '選項1',label: '黃金糕'}, {value: '選項2',label: '雙皮奶'}, {value: '選項3',label: '蚵仔煎'}, {value: '選項4',label: '龍須面'}, {value: '選項5',label: '北京烤鴨'}],base_value: '',disabled_options: [{value: '選項1',label: '黃金糕'}, {value: '選項2',label: '雙皮奶',disabled: true}, {value: '選項3',label: '蚵仔煎'}, {value: '選項4',label: '龍須面'}, {value: '選項5',label: '北京烤鴨'}],disabled_value: '',options: [{value: '選項1',label: '黃金糕'}, {value: '選項2',label: '雙皮奶'}, {value: '選項3',label: '蚵仔煎'}, {value: '選項4',label: '龍須面'}, {value: '選項5',label: '北京烤鴨'}],value: '',clearable_options: [{value: '選項1',label: '黃金糕'}, {value: '選項2',label: '雙皮奶'}, {value: '選項3',label: '蚵仔煎'}, {value: '選項4',label: '龍須面'}, {value: '選項5',label: '北京烤鴨'}],clearable_value: ''}} } </script>

2.4. 在components下創建MultipleSelect.vue

<template><div><h1>基礎多選-適用性較廣的基礎多選, 用Tag展示已選項</h1><h4>為el-select設置multiple屬性即可啟用多選, 此時v-model的值為當前選中值所組成的數組。默認情況下選中值會以Tag的形式展現, 你也可以設置collapse-tags屬性將它們合并為一段文字。</h4><el-select v-model="value1" multiple placeholder="請選擇"><el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select><el-select v-model="value2" multiple collapse-tags style="margin-left: 20px;" placeholder="請選擇"><el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select><h1>自定義模板-可以自定義備選項</h1><h4>將自定義的HTML模板插入el-option的slot中即可。</h4><el-select v-model="value" placeholder="請選擇"><el-option v-for="item in cities" :key="item.value" :label="item.label" :value="item.value"><span style="float: left">{{ item.label }}</span><span style="float: right; color: #8492a6; font-size: 13px">{{ item.value }}</span></el-option></el-select><h1>分組-備選項進行分組展示</h1><h4>使用el-option-group對備選項進行分組, 它的label屬性為分組名。</h4><el-select v-model="group_value" placeholder="請選擇"><el-option-group v-for="group in group_options" :key="group.label" :label="group.label"><el-option v-for="item in group.options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-option-group></el-select></div> </template><script> export default {data () {return {options: [{value: '選項1',label: '黃金糕'}, {value: '選項2',label: '雙皮奶'}, {value: '選項3',label: '蚵仔煎'}, {value: '選項4',label: '龍須面'}, {value: '選項5',label: '北京烤鴨'}],value1: [],value2: [],cities: [{value: 'Beijing',label: '北京'}, {value: 'Shanghai',label: '上海'}, {value: 'Nanjing',label: '南京'}, {value: 'Chengdu',label: '成都'}, {value: 'Shenzhen',label: '深圳'}, {value: 'Guangzhou',label: '廣州'}],value: '',group_options: [{label: '熱門城市',options: [{value: 'Shanghai',label: '上海'}, {value: 'Beijing',label: '北京'}]}, {label: '城市名',options: [{value: 'Chengdu',label: '成都'}, {value: 'Shenzhen',label: '深圳'}, {value: 'Guangzhou',label: '廣州'}, {value: 'Dalian',label: '大連'}]}],group_value: ''}} } </script>

2.5. 在components下創建SearchSelect.vue

<template><div><h1>可搜索-可以利用搜索功能快速查找選項</h1><h4>為el-select添加filterable屬性即可啟用搜索功能。默認情況下, Select會找出所有label屬性包含輸入值的選項。如果希望使用其他的搜索邏輯, 可以通過傳入一個filter-method來實現。filter-method為一個Function, 它會在輸入值發生變化時調用, 參數為當前輸入值。</h4><el-select v-model="value" filterable placeholder="請選擇" :filter-method="filterMethod"><el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select></div> </template><script> export default {data () {return {options: [{value: '選項1',label: '黃金糕'}, {value: '選項2',label: '雙皮奶'}, {value: '選項3',label: '蚵仔煎'}, {value: '選項4',label: '龍須面'}, {value: '選項5',label: '北京烤鴨'}],value: ''}},methods: {filterMethod (query) {console.log(query)}} } </script>

2.6. 在components下創建RemoteSearchSelect.vue

<template><div><h1>遠程搜索-從服務器搜索數據, 輸入關鍵字進行查找</h1><h4>為了啟用遠程搜索, 需要將filterable和remote設置為true, 同時傳入一個remote-method。remote-method為一個Function, 它會在輸入值發生變化時調用, 參數為當前輸入值。需要注意的是, 如果el-option是通過v-for指令渲染出來的, 此時需要為el-option添加key屬性, 且其值需具有唯一性, 比如此例中的item.value。</h4><el-select v-model="value" multiple filterable remote reserve-keyword placeholder="請輸入關鍵詞" :remote-method="remoteMethod" :loading="loading"><el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select></div> </template><script> export default {data () {return {options: [],value: [],list: [],loading: false,states: ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois','Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana','Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania','Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming']}},mounted () {this.list = this.states.map(item => {return { value: `value:${item}`, label: `label:${item}` }})},methods: {remoteMethod (query) {if (query !== '') {this.loading = truesetTimeout(() => {this.loading = falsethis.options = this.list.filter(item => {return item.label.toLowerCase().indexOf(query.toLowerCase()) > -1})}, 200)} else {this.options = []}}} } </script>

2.7. 在components下創建CreateSelect.vue

<template><div><h1>創建條目-可以創建并選中選項中不存在的條目</h1><h4>使用allow-create屬性即可通過在輸入框中輸入文字來創建新的條目。注意此時filterable必須為真。本例還使用了default-first-option屬性, 在該屬性打開的情況下, 按下回車就可以選中當前選項列表中的第一個選項, 無需使用鼠標或鍵盤方向鍵進行定位。</h4><el-select v-model="value" multiple filterable allow-create default-first-option placeholder="請選擇文章標簽"><el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select></div> </template><script> export default {data () {return {options: [{value: 'HTML',label: 'HTML'}, {value: 'CSS',label: 'CSS'}, {value: 'JavaScript',label: 'JavaScript'}],value: []}} } </script>

2.8. 運行項目, 訪問http://localhost:8080/#/Select

2.9. 運行項目, 訪問http://localhost:8080/#/MultipleSelect?

2.10. 運行項目, 訪問http://localhost:8080/#/SearchSelect?

2.11. 運行項目, 訪問http://localhost:8080/#/RemoteSearchSelect

2.12. 運行項目, 訪問http://localhost:8080/#/CreateSelect?

?

總結

以上是生活随笔為你收集整理的010_Select选择器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 女人高潮特级毛片 | 国产成人无码久久久精品天美传媒 | 户外少妇对白啪啪野战 | 精品欧美一区二区三区免费观看 | 一级性生活大片 | 午夜国产福利在线观看 | 免费a级 | www.黄色网址 | 97色资源| 日本丰满熟妇bbxbbxhd | 欧美精品日韩在线观看 | 色悠久久综合 | 黑人狂躁日本妞hd | 国产com | www.日韩一区 | 国产草草 | 菊肠扩张playh | 人成精品 | 无码精品人妻一二三区红粉影视 | 日韩激情欧美 | 久久久精品毛片 | 欧美一级在线播放 | 亚洲av成人无码久久精品 | 韩国成年人网站 | 四虎在线播放 | 日韩精品一区二区在线 | 一级成人免费视频 | 美女网站av| 波多野结衣日韩 | 亚洲欧美综合另类自拍 | 色婷婷天堂 | 日韩欧美成人一区二区 | 国产女厕一区二区三区在线视 | 日本做爰三级床戏 | 青青草一区二区三区 | 黄页视频在线免费观看 | 国产成人观看 | 亚洲色欧美另类 | 日本大尺度吃奶做爰视频 | 天天射av | 一个色综合网 | 国产波霸爆乳一区二区 | 中国农村一级片 | av影院在线播放 | 国产馆av | 国产免费又粗又猛又爽 | 欧美成人精品在线视频 | 亚洲一区av在线 | 99av国产精品欲麻豆 | 男人天堂伊人 | 国产精品久久久久久久免费观看 | 97视频在线免费观看 | 男人天堂影院 | 天堂网在线观看视频 | 伊人精品在线 | 欧美黄色一级片视频 | 欧美亚洲激情 | 麻豆md0034在线观看 | 91成人观看 | 人人爽人人澡 | 国产一区二区三区视频在线观看 | 国产成人在线影院 | 欧美视频在线观看 | 国产免费不卡视频 | 久久久久久久久久久久久女过产乱 | 操网| 毛片内射久久久一区 | 蜜桃臀av在线 | 成人a视频在线观看 | 一级黄色美女 | 精品动漫一区二区三区在线观看 | 美女裸体跪姿扒开屁股无内裤 | 久久人人艹 | 久久久久九九九 | 天堂99| 国产伦精品一区二区三区免费 | 已满十八岁免费观看 | 正在播放adn156松下纱荣子 | www.天天综合 | 精品人妻少妇嫩草av无码 | 日韩大胆视频 | 国产露脸无套对白在线播放 | 9999久久久久 | 99久久久无码国产精品免费蜜柚 | 福利网站在线观看 | 成人网av | 性av在线| 狠狠操女人 | 99黄色 | 糖心vlog精品一区二区 | 国产精品久久毛片 | 欧洲日韩一区二区三区 | 成人涩涩网 | 国产精品久久久久久久免费观看 | 天天操天天操天天操天天操天天操 | 国产成人久久精品77777综合 | 国产女人爽到高潮a毛片 | 成人精品视频一区二区三区尤物 | 欧美一级成人 |