未捕获的TypeError jqute

时间:2015-03-13 08:41:56

标签: javascript jquery html treetable jqote

我正在尝试制作一个非常简单的html tableTree。我没有关于html / javascript编程的经验,所以我正在遍历谷歌找到我想要实现的例子。

我目前正在尝试找到一种将json文件传递到html文档的简单方法,并且通过使用ajax和jquery来完成代码部分,我已经成功了。

但是我找到了一个使用jqote2的例子,虽然实现这个例子给了我一个错误“Uncaught TypeError:undefined不是一个函数”。我想我错过了一些东西,虽然我无法弄清楚是什么,所以我希望我能在这里得到一些帮助:)

<!DOCTYPE html>
<html>
<head>
  <script src="jquery/jquery-1.11.2.min.js"></script>
  <script src="jqote2/jquery.jqote2.js"></script>
  <script type="text/html" id="template">
  <![CDATA[
    <tr>
      <td class="no"><%= j+1 %></td>
      <td class="title"><%= this.Title %></td>
    </tr>
  ]]>
  </script> 
  <!-- 2 load the theme CSS file -->
  <title>Test</title>
  </head>

  <body>
  <script type="text/javascript">
    var jsondata = [{"Title": "Dr.", "Surname": "House", "Firstname":  "Geronimo"},{"Title": "Mr.", "Surname": "Franklin", "Firstname": "Benjamin"}];
    // Now call jQote on the template providing your json data
    $('#template').jqote(jsondata).appendTo($('#users'));
  </script>

  <div>
    <table id="users"></table>
  </div>

</body>
</html>

我已根据http://aefxx.com/jquery-plugin/jqote/

中的示例构建此代码

运行此代码时,我收到错误

$('#template').jqote(jsondata).appendTo($('#users'));

所以我错过了什么:)我已经检查并且包含的​​文件确实存在且路径正确。

1 个答案:

答案 0 :(得分:0)

你在CData部分遇到问题 字符如&#34;&lt;&#34;和&#34;&amp;&#34;在XML元素中是非法的。

&#34;&LT;&#34;将生成错误,因为解析器将其解释为新元素的开头。

&#34;&安培;&#34;将生成错误,因为解析器将其解释为字符实体的开头。

有些文字,比如JavaScript代码,包含很多&#34;&lt;&#34;或&#34;&amp;&#34;字符。为避免错误,脚本代码可以定义为CDATA。

解析器会忽略CDATA部分内的所有内容。 移动你不能像你那样写字符串

http://www.w3schools.com/xml/xml_cdata.asp

从json对象中绘制一个表就像这样

<!DOCTYPE html>
<html>
<head>
  <script src="jquery-1.11.2.min.js"></script>

  <!-- 2 load the theme CSS file -->
  <title>Test</title>
  </head>


  <script type="text/javascript">
    var jsondata = [{"Title": "Dr.", "Surname": "House", "Firstname":  "Geronimo"},{"Title": "Mr.", "Surname": "Franklin", "Firstname": "Benjamin"}];
    // Now call jQote on the template providing your json data

    $( document ).ready(function() {
       $.each( jsondata, function( key, value ) {
            $.each( value, function( k, v ) {
                    $("#"+k).html(v);

            });
    });
});

  </script>

   <body>
  <table>
  <tr>
  <td id="Title"></td>
  <td id="Surname"></td>
  <td id="House"></td>
  <td id="Firstname"></td>
  </tr>
  </table>

</body>
</html>

第一个循环会将对象剪切成数组,第二个循环会让你获得键和值,然后用它们做你想做的事情^ _ ^希望这个帮助