1.radio
//定义一个数组
const _data = [];
//遍历input
$('input[type="radio"]').each(function(){
if($(this).is(":checked")){
let data = {};
data['subject_id'] = $(this).attr('name');
data['answer']=($(this).val());
_data.push(data)
}
});
2.checkbox
//获取所有checkbox的name
const checkbox =[];
$('input[type="checkbox"]').each(function(i){
if($(this).is(":checked")){
var data1 = {};
data1['subject_id'] = $(this).attr('name');
checkbox.push(data1['subject_id'])
}
});
//checkbox name去重
var a=$.unique(checkbox);
//用name 查找checkbox的value 组成新的数组
const _data=[];
a.forEach(function(element) {
const array =[];
const data2={};
$("input:checkbox[name='" + element + "']:checked").each(function(i){
array.push($(this).val());
});
data2['subject_id'] = element;
data2['answer'] = array.join("-");
_data.push(data2)
});
3.提交
const _param = {};
_param['data'] = _data;
$.ajax({
headers: {
'content-type': 'application/json',
},
type: "POST",
url: "***",
dataType:"json",
data:JSON.stringify(_param),//js对象转json字符串
success: function (result) {
console.log(result)
if(result.code==200){
status=1
}else{
status=0
}
},
error: function (e) {
//alert(e);
}
})