使用 Javascript 将单元格附加到 Collection

Append Cells to Collection using Javascript

我目前正在尝试模拟一个邮箱,并正在使用 materialize 来构建它。在我的 collection 视图中,我正在尝试动态添加单元格,但不确定如何使用 Javascript.

继续附加 html
  <div class="row" id="mailBox">
          <div class="container col s7">
            <div class="collection-header center">
              <h4>Email Box</h4>
            </div>
            <ul class="collection with-header" id="mailCollection">
              <!-- Start: Trying to Dynamically Add These Cells To this view -->
              <li class="collection-item avatar email-unread">
                <span class="circle indigo darken-1"></span>
                <span class="email-title"> Subject </span>
                <p class="truncate grey-text ultra-small"> Message </p>
                <a href="#!" class="secondary-content email-time"><span class="blue-text ultra-small">Date Recieved</span></a>
              </li>
              <!-- End of Cell Content -->
            </ul>
          </div>
       </div>

我试图通过我的 javascript 附加 collection 项,尽管屏幕上没有显示任何内容:

function createHTML(){
   var jsonData = jsonObject;
   for(var i =0; i < jsonData.length; i++){
     $("#mailCollection").append('<li class="collection-item avatar email-unread">' +
       '<span class="circle indigo darken-1"></span>'
       '<span class="email-title">' + jsonData[0]  + '</span>'
       '<p class="truncate grey-text ultra-small">' + jsonData[1] + '</p>'
       '<a href="#!" class="secondary-content email-time"><span class="blue-text ultra-small">' + jsonData[2] + '</span></a>
     </li>')
   }
 }

根据您的代码,在附加 html 的单引号和双引号中存在很多语法错误。请检查下面的代码没有任何语法错误。

function createHTML(){
   var jsonData = jsonObject;
   for(var i =0; i < jsonData.length; i++){
     $("#mailCollection").append("<li class='collection-item avatar email-unread'><span class='circle indigo darken-1'></span><span class='email-title'>' + jsonData[0]  + '</span><p class='truncate grey-text ultra-small'>' + jsonData[1] + '</p><a href='#!' class='secondary-content email-time'><span class='blue-text ultra-small'>' + jsonData[2] + '</span></a></li>")
   }
 }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="row" id="mailBox">
          <div class="container col s7">
            <div class="collection-header center">
              <h4>Email Box</h4>
            </div>
            <ul class="collection with-header" id="mailCollection">
              <!-- Start: Trying to Dynamically Add These Cells To this view -->
              <li class="collection-item avatar email-unread">
                <span class="circle indigo darken-1"></span>
                <span class="email-title"> Subject </span>
                <p class="truncate grey-text ultra-small"> Message </p>
                <a href="#!" class="secondary-content email-time"><span class="blue-text ultra-small">Date Recieved</span></a>
              </li>
              <!-- End of Cell Content -->
            </ul>
          </div>
       </div>