您的位置:首页 > 移动开发 > 微信开发

微信小程序实现下拉刷新清空input输入内容

2017-08-07 17:33 627 查看
今天自己公司的小程序需要用到这个功能,然后就上网查了一下,结果真心不如人意,找的全是什么from表单的reset方法,但是这个方法我的理解是需要用一个按钮之类的去触发,所以不是我想要的。还有一种就是给input的value一个值然后刷新的时候setData,但是我的input全是一个for循环下来的,所以当时觉得别人的这个方法也还是不对。

不过,我仔细想了一下,还是采用了第二种方法,我们可以为每一个for里的input利用for循环的index编个号,这样就可以一一对应了,直接看代码:

<view class="dyj_price_show">
<text class="dyj_price_text">打印价格:</text>
<input class="dyj_price_input" id="{{item.configID}}_print" placeholder="{{item.dyPrice}}" type="digit" confirm-type="done" bindinput="changePrice" value="{{print[index]}}" />
<text class="dyj_price_text">元</text>
</view>

为每个for循环体力的input的value依据循环次数index设置一个Page中的data,即代码中的
value="{{print[index]}}"
然后在js文件中,下拉刷新代码中setData设置它们为空即可
this.setData({
copy: null,
print: null
})

input的bindinput代码:
changePrice: function (e) {
var meg = e.currentTarget.id;

if (meg == 'print') {
for (var i = 0; i < item.length; i++) {
var print = 'print['+i+']';
this.setData({
[print]: e.detail.value
});
break;
}
}
} else if (meg == 'copy') {
for (var i = 0; i < item.length; i++) {
if (item[i].configID == configID) {
var copy = 'copy['+i+']';
this.setData({
[copy]: e.detail.value
});
break;
}
}
}

全部都是部分代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐