【问题标题】:Uncaught SyntaxError: Unexpected token < in jQuery未捕获的 SyntaxError:jQuery 中的意外标记 <
【发布时间】:2011-07-09 14:43:50
【问题描述】:

我收到“Uncaught SyntaxError: Unexpected token

请帮忙。


<script type="text/javascript" src="/static/jstree/_lib/jquery.js"></script>
<script type="text/javascript" src="/static/jstree/jquery.jstree.js"></script>

<script type="text/javascript">

$(function () {

// load the 3D Script
$("#container").ready(function(){
    $.getScript("json_model.js");
});

// load the jstree  
$("#demo").jstree({ 
    "json_data" : {
        "ajax": {
            "url": "/static/templates/json_tree.js",
            "data":function(n){
            }
        }
    },
    "plugins" : ["themes", "json_data"]

    }).bind("select_node.jstree", function (e, data){});
});
</script>

<div id="demo">
</div>

<div id="container">
</div>

【问题讨论】:

  • 我的猜测是它在你的json_model.js 文件中,因为当你注释掉它的加载时,它工作正常。可以发json_model.js的内容吗?
  • 错误在哪一行? json_model.js 中有 &lt;script&gt; 标签吗?删除它们。
  • 只是猜测:您/您的脚本可能正在尝试加载它期望包含 JSON 的文件。相反,它正在获取 HTML(可能是 404 错误)。

标签: javascript jquery html


【解决方案1】:

当你自己点击/static/templates/json_tree.js 时,你会得到什么?你看到 JSON 还是 Javascript?如果您有 Firebug,请查看 Net 选项卡以查看您从 URL 收到的响应。

如果看到&lt;,可能是因为该函数需要 Javascript 或 JSON,但看到的是 HTML。

【讨论】:

    【解决方案2】:

    您必须检查 js 文件的路径或更改文件 js 所在的目录名称,有时服务器无法获取路径。例如,如果您有 public 和 js dir out of public,并且您也有相同的 inside public,但路径相同 http://www.somthing.com/js/jsfile.js 并且服务器不知道必须获取哪个文件。

    【讨论】:

    • 我使用 /index.php 作为路由器,并且我的路径需要一个“../”前缀,因为 URI 位于虚拟子目录中。谢谢你的线索!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-29
    • 1970-01-01
    相关资源
    最近更新 更多