zoukankan      html  css  js  c++  java
  • fastadmin 如何构建组合题--Cannot read property '0' of undefined

    以下是逻辑思考

    一. k=0 单选 k=1 多选 k=2 判断 k=3 填空 k=4 简答 k=5 组合
    这6种题型同级,写在一个字段中,使用json字符串的方式,进行存储
    二.6种题型不同级
    组合题,包含前5种,并且自成一个字段
    字段内容,也使用json进行存储
    三.存储数据的逻辑是
    1.6种题型,都会post过去
    2.但是,控制器,根据type,对数据进行过滤,最后传入到数据库
    四:出现Cannot read property '0' of undefined
    原因是什么?
    https://www.cnblogs.com/cyh-blogs/p/13064306.html

    首先Google翻一下:
    见文之意:这里的意思就是模板在渲染时候,读取对象中的某个对象的属性值时,这个对象不存在,说通俗点就是三层表达式a.b.c,在对象a中没有对象b,那么读取对象a.b.c中的值,自然会报错。如果是两层表达式a.b则不会报错,返回的是undefined。
    
    代码如下,追加的时候,提示Cannot read property '0' of undefined
    <!--单选题 -->
                                        <script id="sub_answer0" type="text/html">
                                       
                                            <dd class="form-inline  row">
                                                <ins class="col-xs-12 col-sm-1"><input  type="radio" name="row[answer0]" value="<%=row.key%>"/></ins>
                                                <ins class="col-xs-12 col-sm-2"><input   name="<%=name%>[<%=index%>][key]" class="form-control" placeholder="选项" size="10" value="<%=row.xuanda[0][index].key%>"/></ins>
                                                <ins class="col-xs-12 col-sm-8"><input  type="text" name="<%=name%>[<%=index%>][value]" class="form-control  myeditor" placeholder="" value="<%=row.xuanda[0][index].value%>"/></ins>
                                            
                                                
                                                <!--下面的两个按钮务必保留-->
                                                <span class="btn btn-sm btn-danger btn-remove"><i class="fa fa-times"></i></span>
                                            </dd>
                                        </script>
    

    优化了一些写法,为了追加。并且把art-template弄到最新版,才能引入模板变量,注意,在value中,index直接写index

     <!--单选题 -->
                                        <script id="sub_answer0" type="text/html">
                                        
                                        
                                        <% $imports.log(row) %>
                                          <%if($imports.Object.keys(row).length==0){%> 
                                          
                                                <dd class="form-inline  row">
                                                <ins class="col-xs-12 col-sm-1"><input  type="radio" name="row[answer0]" value="<%=row.key%>"/></ins>
                                                <ins class="col-xs-12 col-sm-2"><input   name="<%=name%>[<%=index%>][key]" class="form-control" placeholder="选项" size="10" value=""/></ins>
                                                <ins class="col-xs-12 col-sm-8"><input  type="text" name="<%=name%>[<%=index%>][value]" class="form-control  myeditor" placeholder="" value=""/></ins>
                                                <!--下面的两个按钮务必保留-->
                                                <span class="btn btn-sm btn-danger btn-remove"><i class="fa fa-times"></i></span>
                                                </dd>
                                                  
                                            <%}else{%> 
                                            
                                            <dd class="form-inline  row">
                                                <ins class="col-xs-12 col-sm-1"><input  type="radio" name="row[answer0]" value="<%=row.key%>"/></ins>
                                                  //错误写法。value="<%=row.xuanda[0][<%=index%>].value%>",value="<%=row.xuanda[0][<%=index%>].value%>",正确的如下
                                                <ins class="col-xs-12 col-sm-2"><input   name="<%=name%>[<%=index%>][key]" class="form-control" placeholder="选项" size="10" value="<%=row.xuanda[0][index].key%>"/></ins>
                                                <ins class="col-xs-12 col-sm-8"><input  type="text" name="<%=name%>[index][value]" class="form-control  myeditor" placeholder="" value="<%=row.xuanda[0][<%=index%>].value%>"/></ins>
                                                <!--下面的两个按钮务必保留-->
                                                <span class="btn btn-sm btn-danger btn-remove"><i class="fa fa-times"></i></span>
                                            </dd>
                                               
                                            <%}%>
                                           
                                        
                                           
                                        </script>
    
    
  • 相关阅读:
    JS加强学习-BOM学习03
    JS加强学习-BOM学习02
    JS加强学习-BOM学习01
    JS加强学习-DOM学习总结
    JS加强学习-DOM学习05
    JS加强学习-DOM学习04
    JS加强学习-DOM学习03
    《雨霖铃》——柳永
    《青玉案·元夕》——辛弃疾
    《沁园春·雪》——毛 泽东
  • 原文地址:https://www.cnblogs.com/cn-oldboy/p/13123592.html
Copyright © 2011-2022 走看看