时间:2021-05-18
微信小程序 动态绑定数据及动态事件处理
关键核心代码
<image class="midimage" data-Type="{{item.Type}}" data-BillCode="{{item.BillCode}}" data-src="{{item.imgurl}}" src="{{item.imgurl}}" mode="scaleToFill" bindtap="addtaskimg" bindlongtap="imglongtap" ></image>var objurl= JSON.parse(res.data); //重置图片参数 var temppostionlist=that.data.postionlist; for (var i=0;i<temppostionlist.length;i++) { if (temppostionlist[i]["Type"]==e.currentTarget.dataset.type){ temppostionlist[i]["imgurl"]=temppaths; temppostionlist[i]["serverimgurl"]=objurl.Body.Data; break; } } that.setData( { postionlist:temppostionlist })利用image的data-Type,可以在js后台中知道是点击了哪个image,上传图片后再循环得出相等data-type的数据项进行赋值,这样就能动态给相应的标签赋值
addtaskimg 为统一的动态事件
主要代码如下
.wxml
<scroll-view class="center" scroll-y="true"> <view class="midcenter" wx:for="{{postionlist}}"> <view class="mid_top" > <image class="smallimage" src="../images/my/XXH/line_title.png" mode="aspectFit" ></image> <text>{{item.KeyValue}}</text> </view> <view class="mid_center"> <text>{{item.Remark}}</text> </view> <view class="mid_bottom"> <image class="midimage" data-Type="{{item.Type}}" data-BillCode="{{item.BillCode}}" data-src="{{item.imgurl}}" src="{{item.imgurl}}" mode="scaleToFill" bindtap="addtaskimg" bindlongtap="imglongtap" ></image> </view> </view> </scroll-view>.js
addtaskimg:function(e){ //添加选择图片 if (this.data.blongtap) { //处理如果是长按,则不再执行下面的 this.setData({ blongtap:false }); return; } var that = this; wx.chooseImage({ count:1, //默认1张 success:function(res){ //先上传至服务器,再返回路径供保存 var temppaths=res.tempFilePaths[0];//+".jpg"; wx.uploadFile({ url:app.globalData.ghost+"YWTask/PutUploadFile?BillCode="+that.data.detail.BillCode+"&ID="+that.data.id, filePath:temppaths, name:'image', formData:{}, success:function(res){ //res.data返回的是一个字符串,需进行转换成objcet,wx不识别eval函数 console.log(res.Data); var objurl= JSON.parse(res.data); //重置图片参数 var temppostionlist=that.data.postionlist; for (var i=0;i<temppostionlist.length;i++) { if (temppostionlist[i]["Type"]==e.currentTarget.dataset.type){ temppostionlist[i]["imgurl"]=temppaths; temppostionlist[i]["serverimgurl"]=objurl.Body.Data; break; } } that.setData( { postionlist:temppostionlist }) } }) } }) }感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
微信小程序动态绑定事件并实现事件修改样式实例代码wxml{{item.name}}jsvarreportTypeList=[{name:"日报1",id:"1"
微信小程序循环及嵌套循环的使用总结关于微信小程序,最近被安排做微信小程序,首次接触,总体来说上手不是太困难。对于小程序的循环问题颇有感触,因为自己绑定数据到界面
本文实例讲述了微信小程序实现动态设置placeholder提示文字及按钮选中取消状态的方法。分享给大家供大家参考,具体如下:效果图展示通过绑定点击事件place
微信小程序之前台循环数据绑定微信小程序的循环数据绑定到wxml例:wxml里:{{item.message}}通过上面的wx.for可以绑定一个数组,数组是js
本节主要介绍Bootstrap的后台数据绑定、特殊列处理及列的排序功能1.数据绑定一般做程序设计,很少是使用json文件直接绑定数据。基本上我们都是使用编程语言