微信小程序?qū)崿F(xiàn)自定義picker選擇器彈窗內(nèi)容
微信小程序中定義好的幾種picker選擇器,不管是日期選擇器還是地區(qū)選擇器,或是其他的都有定死的樣式和內(nèi)容。
例如:
但是大多數(shù)開發(fā)程序的情況下還是需要自己寫樣式的,或是內(nèi)容的。
例如:
wxml
<view class="free-btns" style="margin-top: 10vh;background:none;"> <button class="free-btn" bindtap="toggleDialog"> 選定國家:{{value}} </button> </view> <view class="free-dialog {{ showDialog ? 'free-dialog--show' : '' }}"> <view class="free-dialog__mask" bindtap="toggleDialog" /> <view class="free-dialog__container"> <view style="padding: 5% 5% 15%;"> <form bindsubmit='submit' bindreset="reset"> <view bindtap='freetoBack' class="free-button free-dialog-reset">取消</view> <view bindtap='freeBack' class="free-button free-dialog-submit">確定</view> <radio-group class='free-radios' bindchange="radioChange"> <label class="free-radio" bindtap="click" wx:for="{{items}}" wx:key="{{items}}" data-id="{{index}}" style="{{index==id?'background:#48c23d;color:#fff;':'background:#fff;color:#000;'}}"> <radio value="{{item.name}}" name="{{item.value}}"></radio> <label class="free-text">{{item.value}}</label> </label> </radio-group> </form> </view> </view> </view>
css
.free-dialog__mask { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 10; background: rgba(0, 0, 0, 0.7); display: none; } .free-dialog__container { position: fixed; left: 0; bottom: 0; width: 750rpx; background: white; transform: translateY(150%); transition: all 0.4s ease; z-index: 11; } .free-dialog--show .free-dialog__container { transform: translateY(0); } .free-dialog--show .free-dialog__mask { display: block; } /*模態(tài)框中的內(nèi)容*/ .free-button{ display: inline-block; width:50px; text-align: center; font-size:20px; color:#707070; margin-bottom:20px; } .free-dialog-submit{ float: right; color:#48c23d; } radio-group{ margin:10rpx 0rpx; } radio-group>label{ width:22.5%; display: inline-block; border:1px solid #ddd; padding:10px 0px; margin:0px 2px 2px; } radio-group label radio{ width:100%; z-index: 3; display: none; } .checked{ background:#48c23d; color:#fff; } radio-group label .free-text{ width:100%; text-align: center; display: inline-block; }
js
Page({ data: { showDialog: false, items: [ { name: '中國', value: '中國' }, { name: '美國', value: '美國' }, { name: '巴西', value: '巴西' }, { name: '日本', value: '日本' }, { name: '英國', value: '英國' }, { name: '法國', value: '法國' }, { name: '韓國', value: '韓國' }, { name: '俄羅斯', value: '俄羅斯' },] }, /*點(diǎn)擊變色*/ click:function(e){ var id = e.currentTarget.dataset.id var that = this that.setData({ id:id }) }, onLoad: function (options) { var that = this that.setData({ value:'show' }) }, radioChange: function (e) { console.log('radio發(fā)生change事件,攜帶value值為:', e.detail.value) var that = this that.setData({ value: e.detail.value }) console.log(this.data.value) }, toggleDialog() { this.setData({ showDialog: !this.data.showDialog }); }, freeBack:function(){ var that = this if(this.data.value=='show'){ wx.showModal({ title: '提示', content: '你沒有選擇任何內(nèi)容', }) } that.setData({ showDialog: !this.data.showDialog }) }, freetoBack: function () { var that = this wx.showModal({ title: '提示', content: '你沒有選擇任何內(nèi)容', }) that.setData({ showDialog: !this.data.showDialog, value:'show', checked: false, }) }, })
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript組成、引入、輸出、運(yùn)算符基礎(chǔ)知識講解
JavaScript 被數(shù)百萬計的網(wǎng)頁用來改進(jìn)設(shè)計、驗證表單、檢測瀏覽器、創(chuàng)建cookies,以及更多的應(yīng)用。這篇文章主要介紹了JavaScript組成、引入、輸出、運(yùn)算符基礎(chǔ)知識講解,需要的朋友可以參考下2016-12-12IE6中使用position導(dǎo)致頁面變形的解決方案(js代碼)
IE6中使用position導(dǎo)致頁面變形,影響用戶體驗,通過搜索可以通過js來實(shí)現(xiàn)。2011-01-01JS教程:window.location使用方法的區(qū)別介紹
這篇文章介紹了window.location使用方法的區(qū)別,有需要的朋友可以參考一下2013-10-10使用canvas修改二維碼顏色的實(shí)現(xiàn)過程
二維碼作為現(xiàn)代信息傳遞的重要工具,其黑白色調(diào)一直是其標(biāo)志性特征,然而,有時我們可能希望個性化定制二維碼的顏色,以適應(yīng)特定設(shè)計需求或提高可識別性,在這篇文章中,我們將深入探討如何使用Canvas技術(shù)修改二維碼的顏色,為二維碼添加更多創(chuàng)意和個性2023-11-11HTML中使背景圖片自適應(yīng)瀏覽器大小實(shí)例詳解
這篇文章主要介紹了HTML中使背景圖片自適應(yīng)瀏覽器大小實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-04-04JS實(shí)現(xiàn)定時自動關(guān)閉DIV層提示框的方法
這篇文章主要介紹了JS實(shí)現(xiàn)定時自動關(guān)閉DIV層提示框的方法,可實(shí)現(xiàn)加載時載入js代碼控制div層提示框自動關(guān)閉的效果,非常簡單實(shí)用,需要的朋友可以參考下2015-05-05微信小程序調(diào)用微信支付接口的實(shí)現(xiàn)方法
這篇文章主要介紹了微信小程序調(diào)用微信支付接口,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04JS獲取鼠標(biāo)坐標(biāo)、獲取鼠標(biāo)像素點(diǎn)示例
運(yùn)行代碼之后隨意移動鼠標(biāo)的位置,可適時顯現(xiàn)鼠標(biāo)的坐標(biāo)點(diǎn),不占用系統(tǒng)資源2014-03-03