当你需要提交一些需要单选的问题时,可以判断这些问题是否已经被全部选中,如果没有全部选中的话,可以让你的提交按钮不起作用(即无法点击提交)。要实现这个功能,首先你要计算题的总个数,然后算出你的选项和题号组成的数组里面的个数,最后,把两个获取到的数值进行对比,如果两个值相等,即可提交,否则提交不起作用。提交按钮控制函数( 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 });
}
这样就完成了控制按钮提交功能