<view class='fuk-v-new'>
<view class='kuan-v' wx:for="{{formName}}">
<text class='text-nr'>{{item.chinese_name}}</text>
<checkbox-group class="wc-box" data-id="{{item.id}}" bindchange="checkboxChange">
<label class="checkbox-box" >
<checkbox class='box-nc' value="{{item.id}}" checked="" />
</label>
</checkbox-group>
</view>
</view>
这是循环的数组,有7条记录,就有相对应的7个value值,
checkboxChange: function (e) {
console.log('checkbox发生change事件,携带value值为:', e.detail.value)
}
这是JS获取value值得代码,参考得官方文档,
结果是点击一个checkbox就会打印出当前checkbox得值,无法获取所有选中得checkbox得值,尝试过通过checked来获取,发现走不通,求大佬告知!!!
将当前的值塞进数组,不停更新,当检索到用相同的值存在数组里,删除,就可以咯,逻辑就是这样的
可以加我QQ,快下班了,要肥家了
785454405
兄弟,你这个QQ找不到阿,我现在按照你得做法试了一下,应该是我写错了,一直替换掉了,
checkboxChange: function (e) {
var fid = e.detail.value; 获取value值
var a = fid.join(","); 转json
console.log(a)
var formId = [];
formId.push(a) 更新到这个数组
console.log(formId)
}
最后还是不行,数组里面得数据还是这样子
你这个写法还是不对,循环的位置,应该是里面的<checkbox class='box-nc' value="{{item.id}}" checked="" />,不是这里
<view class='kuan-v' wx:for="{{formName}}">
给formName 赋值 然后添加check属性值例如:
使用checkbox-group的 bindchange 方法获取到改动的index 及checked值 然后遍历为true的值 就获取到了
你应该循环checkbox
是的呢,是我开始想法就错了
我一直在想点哪个获取哪个,结果每次点了它都给我返回一个数组,搞到我要自己弄个东西去处理。你倒好,点哪个出哪个。
噢,我知道了,你用了for循环了checkgroup,但是要出一个数组那个应该循环checkbox才对,就是一个checkgroup里面有好多个checkbox就行了。
你的还没搞明白这个机理,思路不对,多看看文档
他是想说,一次获取很多个,而不是想你说的那样还要弄个数组塞进去再删除。你去看看文档才对。
听你这么一说,是我漏看了
没,他的写法跟你的做法刚好给了我思路可以重写前两天的代码,之前写的性能没你这个好。谢谢。
共勉