问卷调查单选js
// 是否选中input
Array.prototype.minus = function (arr) {
var result = new Array()
var obj = {}
for (var i = 0; i < arr.length; i++) {
obj[arr[i]] = 1
}
for (var j = 0; j < this.length; j++) {
if (!obj[this[j]]) {
obj[this[j]] = 1
result.push(this[j])
}
}
return result
}
//定义的名字
let inputName = ['one', 'two', 'three', 'four', 'five', 'six']
//点击事件
$('.submit').click(function () {
var list = []
var value = []
//循环选中的添加到list数组中
$('input:radio:checked').each(function () {
list.push($(this).attr('name'))
value.push($(this).attr('value'))
})
//判断选中的数量
if (list.length < 6) {
//获取所有未选中的input
let listName = inputName.minus(list)
//循环未选中的,修改样式
listName.forEach((item) => {
$('input[name=' + item + ']')
.parents('.question-select')
.css('border', '0.01rem solid red')
})
$('.tips').show()
} else {
var str = ''
let fraction = 0
value.forEach((item) => {
str += item + '-'
if (item == 'A') {
fraction += 3
} else if (item == 'B') {
fraction += 2
} else if (item == 'C') {
fraction += 1
}
})
str1 = str.slice(0, length - 1)
submit(str1, fraction)
}
})