<template>
|
<div style="line-height:1.8">
|
<div v-if="qType==1" v-loading="qLoading">
|
<div class="q-title" v-html="qLabel+' '+question.title" style="font-size: x-large"/>
|
<div class="q-content" :hidden="question.template==='intelligence_title'">
|
<el-radio-group v-model="answer.content" @change="answer.completed = true">
|
<el-radio class="intelligence-el_radio" v-for="(item, index) in question.items" :key="item.prefix" :label="item.prefix" @change="jumpNext" :disabled="answer.readOnly" :style="{display:displayVal}">
|
<span class="question-prefix" style="font-size: 18px">{{abcValue[index+1]}}.</span>
|
<span v-html="item.content" class="q-item-span-content" style="font-size: 18px"></span>
|
<br>
|
</el-radio>
|
</el-radio-group>
|
</div>
|
</div>
|
<div v-else-if="qType==2" v-loading="qLoading">
|
<div class="q-title" v-html="question.title"/>
|
<div class="q-content">
|
<el-checkbox-group v-model="answer.contentArray" @change="answer.completed = true" >
|
<el-checkbox v-for="item in question.items" :label="item.prefix" :key="item.prefix" @change="jumpNext" >
|
<span class="question-prefix">{{item.prefix}}.</span>
|
<span v-html="item.content" class="q-item-span-content"></span>
|
</el-checkbox>
|
</el-checkbox-group>
|
</div>
|
</div>
|
<div v-else-if="qType==3" v-loading="qLoading">
|
<div class="q-title" v-html="question.title" style="display: inline;margin-right: 10px"/>
|
<span style="padding-right: 10px;">(</span>
|
<el-radio-group v-model="answer.content" @change="answer.completed = true" >
|
<el-radio v-for="item in question.items" :key="item.prefix" :label="item.prefix" @change="jumpNext" >
|
<span v-html="item.content" class="q-item-span-content"></span>
|
</el-radio>
|
</el-radio-group>
|
<span style="padding-left: 10px;">)</span>
|
</div>
|
<div v-else-if="qType==4" v-loading="qLoading">
|
<div class="q-title" v-html="question.title"/>
|
<div>
|
<el-form-item :label="item.prefix" :key="item.prefix" v-for="item in question.items" label-width="50px" style="margin-top: 10px;margin-bottom: 10px;">
|
<el-input v-model="answer.contentArray[item.prefix-1]" @change="answer.completed = true" />
|
</el-form-item>
|
</div>
|
</div>
|
<div v-else-if="qType==5" v-loading="qLoading">
|
<div class="q-title" v-html="question.title"/>
|
<div>
|
<el-input v-model="answer.content" type="textarea" rows="5" @change="answer.completed = true"/>
|
</div>
|
</div>
|
<div v-else>
|
</div>
|
</div>
|
|
</template>
|
|
<script>
|
export default {
|
name: 'QuestionIntelligenceShow',
|
data () {
|
return {
|
abcValue: { 1: 'A', 2: 'B', 3: 'C', 4: 'D', 5: 'E', 6: 'F' }
|
// abcValue: { '1': 'A', '2': 'B', '3': 'C', '4': 'D', '5': 'E', '6': 'F' }
|
}
|
},
|
props: {
|
question: {
|
type: Object,
|
default: function () {
|
return {}
|
}
|
},
|
answer: {
|
type: Object,
|
default: function () {
|
return { id: null, content: '', contentArray: [] }
|
}
|
},
|
qLoading: {
|
type: Boolean,
|
default: false
|
},
|
qType: {
|
type: Number,
|
default: 0
|
},
|
qLabel: {
|
type: String,
|
default: ''
|
},
|
order: {
|
type: Number,
|
default: 0
|
},
|
displayVal: {
|
type: String,
|
default: 'block'
|
}
|
},
|
methods: {
|
jumpNext () {
|
let _this = this
|
// this.answer.readOnly = true
|
// if (this.answer.content === null || this.answer.content.trim() === '') {
|
// return
|
// }
|
setTimeout(function () {
|
_this.$emit('callNextSubject', [_this.order])
|
}, 500)
|
}
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
span:hover {
|
font-weight: bold;
|
}
|
.intelligence-el_radio {
|
margin-right: 60px;
|
}
|
</style>
|