当你需要提交一些需要单选的问题时,可以判断这些问题是否已经被全部选中,如果没有全部选中的话,可以让你的提交按钮不起作用(即无法点击提交)。要实现这个功能,首先你要计算题的总个数,然后算出你的选项和题号组成的数组里面的个数,最后,把两个获取到的数值进行对比,如果两个值相等,即可提交,否则提交不起作用。提交按钮控制函数( btn_disabled: true)。
第一步,在js代码的data里面 设置变量count 计算题的个数,设置空数组,设置按钮不可用
* 页面的初始数据 */ data: { count: 0, answer:{}, score:{}, btn_disabled: true },第二步,显示学生的信息,并把信息进行分割( split),把分割的元素存放到一个变量,在把变量放到一个数组中
item_change: function (e) { var value = e.detail.value; var arr = value.split("#"); var id = e.currentTarget.dataset.id; var _answer = this.data.answer; _answer[id] = arr[0]; this.setData({ answer: _answer }); // console.log(_answer); var _score = this.data.score; _score[id] = arr[1]; this.setData({ score: _score }); // console.log(_score); var json = this.data.answer
第三步,进行判断,把两个数值进行判断,通过判断来控制按钮是否可以进行提交
//判断的方法 var jsonLength = 0; for (var i in json) { jsonLength++; } // console.log(jsonLength); if (jsonLength == this.data.count) { this.setData({ btn_disabled: false }); } else { this.setData({ btn_disabled: true }); }这样就完成了控制按钮提交功能