这是代码
<tr>
<td class="td_width"></td>
<td class="td_width" style="text-align: center;" v-for="(option,index2) in item.childrenList[0].optionList" :key="index2">
<input type="text" v-model="option.labelName" style="width: 80%;height:30px;" @blur="wjupdoption(option)"/>
</td>
</tr>
<tr v-for="(item2,index) in item.childrenList" :key="item.id+index">
<td class="td_width">
<input type="text" style="width: 80%;height:30px;" v-model="item2.questionsName"/>
</td>
<td class="td_width" style="text-align: center;" v-for="(option,index3) in item.childrenList[0].optionList" :key="index+'-'+index3">
<!-- <input type="radio" @click="askQuestion(option)"/> -->
<el-radio v-model="radio" :key="option.id" :label="index+'-'+index3" @click="askQuestion(option)"></el-radio>
</td>
</tr>
</table>
每一行都是一组单选,现在循环出来的 4 个只能选一个 求大佬指教
每行作为一组 给个自定义name 像radio+行数乱七八糟的
单选按钮name一样就是在这一样的name里面做单选
代码太乱,看不太懂,但是我找到关键部分<el-radio>是被动态创建出来的,并且都绑定了v-model="radio",这个radio是怎么来的?
vue创建的radio如果绑定了同一个值,就会被当做同一组radio
这看着应该是用的vue框架,那为什么不使用UI组件库弄好看一点呢!
可以在state里面设置一个当前选中下标字段,初始值为0;
循环出来的选框点击事件传递一个下标作为参数;
点击事件里面把state那个下标字段设置为传过来的下标;
然后在标签里面进行三元判断,看当前下标是否等于state里面下表字段值;
如果是就选中,不等于就false。