JavaScript创建表哈希

JavaScript创建表哈希,javascript,jquery,html,Javascript,Jquery,Html,我有下面的代码,它应该获取每个数据结果的值并将其发布到HTML表中。我不明白为什么下面的方法不起作用: <html> <head> <script type="text/javascript"> data = { d : { results: [ { Title: 'Title1', Description: 'Description1', Status: 'Status1', Complete: '

我有下面的代码,它应该获取每个数据结果的值并将其发布到HTML表中。我不明白为什么下面的方法不起作用:

<html>
  <head>
    <script type="text/javascript">
    data = { d : {
        results: [
            { Title: 'Title1', Description: 'Description1', Status: 'Status1', Complete: 'Complete1' },
            { Title: 'Title2', Description: 'Description2', Status: 'Status2', Complete: 'Complete2' },
            { Title: 'Title3', Description: 'Description3', Status: 'Status3', Complete: 'Complete3' },
            { Title: 'Title4', Description: 'Description4', Status: 'Status4', Complete: 'Complete4' } ] } };

    data.d.results.push({Title: 'Title5', Description: 'Description5', Status: 'Status5', Complete: 'Complete5'});


    $(document).ready(function() {
        for (var i = 0; i < data.d.results.length; i++) {
            item = data.d.results[i];
            str  = '<tr><td>' + item.Title + '</td><td> ' + item.Description + '</td><td>' + item.Status + '</td><td>' + item.Complete + '</td></tr>';
            $('#mytab tr').last().after(str);
       }
    });

    </script>
  </head>
  <body>
  <table id="mytab">
    <tr>
      <td>Task Title</td> <td>Description</td> <td>Task Status</td> <td>% Complete</td>
    </tr>
  </table>
  </body>
</html>

数据={d:{
结果:[
{Title:'Title1',Description:'Description1',Status:'Status1',Complete:'Complete1'},
{Title:'Title2',Description:'Description2',Status:'Status2',Complete:'Complete2'},
{Title:'Title3',Description:'Description3',Status:'Status3',Complete:'Complete3'},
{Title:'Title4',Description:'Description4',Status:'Status4',Complete:'Complete4'}]};
data.d.results.push({Title:'Title5',Description:'Description5',Status:'Status5',Complete:'Complete5'});
$(文档).ready(函数(){
对于(变量i=0;i
在DOM中呈现表之前,脚本正在运行。尝试将脚本标记从右移到结束标记之前。

在此扩展Patrick的想法。您可以使用以下方法确保加载DOM后执行JS:

$(document).ready(function() {
   // execute your JavaScript code
   // that depends on DOM
});

但是我必须导入您可能缺少的jquery。如果有,请共享浏览器控制台日志,谢谢。我已经修正了。仍然无法工作,但您是否检查了控制台的错误?它告诉您问题所在。ReferenceError:$未定义将脚本标记从何处移动到何处?抱歉,我的答案中的标记已被删除。修复了它我已经这么做了,但我一直得到:ReferenceError:$未在控制台中定义在您的评论部分中,每个人都要求您包含jQuery。你的代码取决于它。仔细看这个问题并接受答案。