<template>
<view class="questionBox" v-for="(item,index) in jsonData" :key="item.id">
<!-- item.type==20 只显示文字标题-->
<view v-if="item.content!=''" class="titleFlex">
<view v-html="item.content"></view>
</view>
<!-- 评价 10-->
<view v-if="item.type=='textarea'" style="margin: 20rpx 10rpx;" @click.native="getCurIndex(index)">
<u-textarea v-model="item.answer" placeholder="请输入内容" @input="OtherFun"></u-textarea>
</view>
<!-- 单选 40-->
<view v-else-if="item.type=='radio'">
<radio-group @change="((label)=>{radioChange2(label, index)})" class="mt_15"
v-model="item.answer">
<label style="display: block;" v-for="(status, i) in item.optionals" :key="status.id">
<radio :value="status.id" style="transform:scale(0.7)" />
<text>{{status.optionValue}}</text>
</label>
</radio-group>
</view>
<!-- 多选 30-->
<view v-else-if="item.type=='checkbox'">
<checkbox-group v-model="item.answer1" @change="((label)=>{checkboxChangeList2(label, index)})"
class="mt_15">
<label style="display: block;" class="uni-list-cell uni-list-cell-pd"
v-for="info in item.optionals" :key="info.id" @click="getCurIndex(index)">
<checkbox :value="info.id" style="transform:scale(0.7)" />
<text>{{info.optionValue}}</text>
</label>
</checkbox-group>
</view>
</view>
<view class="btn" @click="goSubmit">提交</view>
</template>
<script>
export default {
data() {
return {
cur_item_index: 0, //记录当前选项下标
//json数据
jsonData: [],//从后台获取
};
},
mounted() {
},
created() {
},
methods: {
// 获取点击选项的当前下标
getCurIndex(index) {
this.cur_item_index = index
console.log('下标改变', this.cur_item_index)
},
//answer1放多选的值,是数组类型,其他字段的值放在answer里面,是string类型
// 单选
radioChange2(val, index) {
// console.log(val,index)
//label是绑定的值,index是下标
this.jsonData[index].answer = val.detail.value;
console.log(this.jsonData[index].answer,index)
},
// 多选
checkboxChangeList2(val, index){
// console.log(val,index)
this.jsonData[index].answer1 = val.detail.value;
console.log(this.jsonData[index].answer1,index)
},
// 多文本框
OtherFun(e) {
console.log('文本框', e)
// this.jsonData[this.cur_item_index].answer = "";
this.jsonData[this.cur_item_index].answer = e;
},
// 提交
goSubmit() {
let answerList = this.jsonData;
// 传输id和结果
let data = {};
data.txTime = new Date();
data.volunteerTemplateList = answerList;
console.log(data, 'datassss')
xxxx(data).then((response) => {
if (response.code === 200) {
uni.showToast({
title: '提交成功!',
icon: 'success',
duration: 3000,
complete: () => {}
})
}
})
// console.log('提交', jsonData)
},
}
};
</script>