微信小程序?qū)崿F(xiàn)留言板功能
本文實(shí)例為大家分享了微信小程序?qū)崿F(xiàn)留言板功能,可以手寫,可以刪除,可以快速留言,供大家參考,具體內(nèi)容如下
const app = getApp(); Page({ /** * 頁(yè)面的初始數(shù)據(jù) */ data: { msgData: [ { child_id: 1, msg: "泡澡水不要太熱。", checked:'' },//雙引號(hào) { child_id: 2, msg: "面部比較干,想補(bǔ)個(gè)水。", checked: '' }, { child_id: 3, msg: "我只有2小時(shí),您看著安排吧。", checked: '' }, { child_id: 4, msg: "我想把眉毛在修下。", checked: '' }, { child_id: 5, msg: "給我清個(gè)痘痘。", checked: '' }, { child_id: 6, msg: "頭疼,能輕點(diǎn)按。", checked:'' } ], message: '', message_id:[], }, bindTextAreaChange: function(e){ var that = this that.setData({ message:e.detail.value }) }, click:function(e){ var that = this; let id = e.currentTarget.dataset.id; let index = e.currentTarget.dataset.index; var value = []; value = this.data.message_id; var array_i = this.in_array(id, value); var chekeds = that.data.msgData; var msg = chekeds[index].msg; var message = that.data.message; if (!e.currentTarget.dataset.checked){ chekeds[index].checked = true that.setData({ message: message + msg }) }else{ chekeds[index].checked = false that.setData({ message: message.replace(msg, '') }) } that.setData({ msgData: chekeds }) if (array_i) { value.splice(array_i, 1); } else { value.push(id); } this.setData({ message_id: value, }) }, in_array: function (search, array) { for (var i in array) { if (array[i] == search) { return i; } } return false; }, submit:function(){ var value = []; var message = this.data.message; var msgData = this.data.msgData; if (message == '' && !value.length) { wx.showToast({ title: '暫無(wú)選擇項(xiàng)目', icon:'none' }) return; } app.globalData.message = message; for (var i = 0; i < msgData.length; i++) { if(message.indexOf(msgData[i].msg) > -1){ value[i] = msgData[i].child_id; } } wx.request({ url: 'https://www.njnrkj.com/app/public/index.php/index/index/server', method: 'POST', data: {message_id: value, openId: app.globalData.openId, message: message}, header: { 'Accept': 'application/json' }, success: function (res) { if(res){ // wx.showToast({ // title: '捎話成功', // success:function(){ // } // }) wx.switchTab({ url: '/pages/order/order', success: function (e) { var page = getCurrentPages().pop(); if (page == undefined || page == null) return; page.onLoad(); } }) app.globalData.message = message; } console.log(res) } }) }, /** * 生命周期函數(shù)--監(jiān)聽頁(yè)面加載 */ onLoad: function (options) { var that = this; wx.request({ url: 'https://www.njnrkj.com/app/public/index.php/index/index/serversle', method: 'POST', data: { openId: app.globalData.openId }, header: { 'Accept': 'application/json' }, success: function (res) { if (res.data){ var message_id = res.data.message_id; var value = that.data.msgData; var message = res.data.message; that.setData({ message: message }); for (var i = 0; i < value.length;i++) { if (that.in_array(value[i].child_id, message_id)) { value[i].checked = true; that.setData({ msgData: value, }); } } } } }) }, /** * 生命周期函數(shù)--監(jiān)聽頁(yè)面初次渲染完成 */ onReady: function () { }, /** * 生命周期函數(shù)--監(jiān)聽頁(yè)面顯示 */ onShow: function () { }, /** * 生命周期函數(shù)--監(jiān)聽頁(yè)面隱藏 */ onHide: function () { }, /** * 生命周期函數(shù)--監(jiān)聽頁(yè)面卸載 */ onUnload: function () { }, /** * 頁(yè)面相關(guān)事件處理函數(shù)--監(jiān)聽用戶下拉動(dòng)作 */ onPullDownRefresh: function () { }, /** * 頁(yè)面上拉觸底事件的處理函數(shù) */ onReachBottom: function () { }, /** * 用戶點(diǎn)擊右上角分享 */ onShareAppMessage: function () { } })
xml:
<!--pages/order/message/message.wxml--> <view class='message_nav'> <form bindsubmit='FormSubmit'> <view class='section'> <textarea class='message1' type='text' placeholder="請(qǐng)選擇或者輸入捎話(60字以內(nèi))" maxlength='80' style="word- wrap:break-word" bindinput='bindTextAreaChange' value="{{message}}"></textarea> </view> <view class='fast'>快速捎話:</view> <checkbox-group class="checkboxChange"> <view wx:for="{{msgData}}" wx:key="{{index}}" data-index="{{index}}" data-id="{{item.child_id}}" data-checked='{{item.checked}}' bindtap='click' > <checkbox value='{{item.msg}}' class='item' checked='{{item.checked}}' >{{item.msg}}</checkbox> </view> </checkbox-group> <button class='submit' bindtap='submit'>捎話</button> </form> </view>
CSS:
/* pages/order/message/message.wxss */ /*捎話 */ .message_nav{ position: fixed; width: 100%; } .section{ width:96%; height:220rpx; margin-left:5px; } .message1{ width:96%; height:210rpx; margin-top: 30rpx; font-size: 68%; margin-left:20px; } .circle{ height:35rpx; width:35rpx; border-radius: 50%; border: 1rpx solid #ccc; display:inline-block; margin:28rpx 45rpx auto 50rpx; } .fast{ position:relative; top:-50rpx; font-size:90%; background:#f4f4f4; line-height:100rpx; text-indent:2em; } .item{ position:relative; border-bottom:1px solid #f4f4f4; padding-bottom:10px; top: -60rpx; } .item:hover{ background:pink; color: #f4f4f4; } .message_font{ font-size:80%; font-family:"微軟雅黑"; font-weight:blod; display:inline-block; position:relative; top:-5rpx; } .submit{ outline:none; border:none; list-style: none; width:100%; height: 100rpx; background: #fed1d6; position: relative; top:160rpx; line-height: 100rpx; -webkit-border-radius: 1rpx; -moz-border-radius: 1rpx; border-radius: 1rpx; -webkit-appearance : none ; } button::after{ border:none; } .item{ position:relative; border-bottom:1px solid #f4f4f4; padding-top:5px; top: -60rpx; width:100%; padding-left: 45rpx; } .checkboxChange{ position:relative; top:15rpx; font-size: 68%; border-radius: 50%; } /* .circle{ border-radius: 50%; } */
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript 動(dòng)態(tài)將數(shù)字金額轉(zhuǎn)化為中文大寫金額
JavaScript 將數(shù)字金額轉(zhuǎn)化為中文大寫金額的函數(shù)2009-05-05js針對(duì)ip地址、子網(wǎng)掩碼、網(wǎng)關(guān)的邏輯性判斷
這篇文章主要介紹了js針對(duì)ip地址、子網(wǎng)掩碼、網(wǎng)關(guān)的邏輯性判斷,感興趣的小伙伴們可以參考一下2016-01-01深入淺析JS Function()構(gòu)造函數(shù)
這篇文章給大家介紹了js function()構(gòu)造函數(shù)的知識(shí)以及關(guān)于function()構(gòu)造函數(shù)需要注意的幾個(gè)要點(diǎn),本文介紹的非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看下吧2016-08-08網(wǎng)頁(yè)從彈窗頁(yè)面單選框傳值至父頁(yè)面代碼分享
最近有項(xiàng)目需求,需要在加入新機(jī)構(gòu)的時(shí)候,需要選擇它的上級(jí)機(jī)構(gòu),下面把代碼整理,分享給大家,需要的朋友可以參考下2015-09-09BootStrap使用popover插件實(shí)現(xiàn)鼠標(biāo)經(jīng)過顯示并保持顯示框
這篇文章主要介紹了BootStrap使用popover插件實(shí)現(xiàn)鼠標(biāo)經(jīng)過顯示并保持顯示框的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06微信小程序自定義菜單切換欄tabbar組件代碼實(shí)例
這篇文章主要介紹了微信小程序自定義菜單切換欄tabbar組件代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12Bootstrap基本插件學(xué)習(xí)筆記之模態(tài)對(duì)話框(16)
這篇文章主要為大家詳細(xì)介紹了Bootstrap基本插件學(xué)習(xí)筆記之模態(tài)對(duì)話框的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12