您好,登錄后才能下訂單哦!
本文實例為大家分享了微信小程序實現留言板功能,可以手寫,可以刪除,可以快速留言,供大家參考,具體內容如下
const app = getApp(); Page({ /** * 頁面的初始數據 */ data: { msgData: [ { child_id: 1, msg: "泡澡水不要太熱。", checked:'' },//雙引號 { child_id: 2, msg: "面部比較干,想補個水。", checked: '' }, { child_id: 3, msg: "我只有2小時,您看著安排吧。", checked: '' }, { child_id: 4, msg: "我想把眉毛在修下。", checked: '' }, { child_id: 5, msg: "給我清個痘痘。", checked: '' }, { child_id: 6, msg: "頭疼,能輕點按。", 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: '暫無選擇項目', 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) } }) }, /** * 生命周期函數--監聽頁面加載 */ 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, }); } } } } }) }, /** * 生命周期函數--監聽頁面初次渲染完成 */ onReady: function () { }, /** * 生命周期函數--監聽頁面顯示 */ onShow: function () { }, /** * 生命周期函數--監聽頁面隱藏 */ onHide: function () { }, /** * 生命周期函數--監聽頁面卸載 */ onUnload: function () { }, /** * 頁面相關事件處理函數--監聽用戶下拉動作 */ onPullDownRefresh: function () { }, /** * 頁面上拉觸底事件的處理函數 */ onReachBottom: function () { }, /** * 用戶點擊右上角分享 */ onShareAppMessage: function () { } })
xml:
<!--pages/order/message/message.wxml--> <view class='message_nav'> <form bindsubmit='FormSubmit'> <view class='section'> <textarea class='message1' type='text' placeholder="請選擇或者輸入捎話(60字以內)" maxlength='80' 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%; } */
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。