2017-04-02 3 views
-1

重要な編集は、いくつかの奇妙な動作の一番下にあります。私は速度テンプレートエンジンを使用している、それが重要`Uncaught SyntaxError:既存のjavascriptファイルを参照するときに予期しないトークン<`


は私が<script>タグを経由して、私のHTMLにJavaScriptのファイルをインクルードしようとしていると私は場合は、エラーUncaught SyntaxError: Unexpected token <

を取得しています。

ご協力いただきありがとうございます。


ここに私のディレクトリ構造があります。


Directoryは、ここに私のindex.vmファイルです。

<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>Velocity Demo</title> 
</head> 

<body> 
    <input type="text" onkeydown="filter(this)"></input> 
    #foreach ($person in $personList) 
     <div> 
      <h4>$person.name</h4> 
     </div> 
    #end 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
    <script type="text/javascript" src="../static/js/filter.js"></script> 
</body> 
</html> 

そして、ここでのJavaScriptファイルです。

function filter(element) { 
    $.ajax({ 
     url: '/updateFilter?filter=' + element.value, 
     success: location.reload(true), 
     error: location.reload(true) 
    }) 
} 

編集この画像を追加します。何らかの理由で、これはChromeでソースを調べるときにfilter.jsというファイルです。

Chrome sources


EDIT:何らかの理由で、すべてがfilter.js含むIはコントローラにマッピングされた一つ以外の要求、index.vm

screenshot

+0

chrome dev toolsを開いて、正確なURLが要求されているか、どのような応答が生成されているかを確認します。 – zerkms

+0

代わりに '.getJSON'を使用できますか? – JohnnyBizzle

+1

あなたのサーバは見た目で間違ったファイルを送信しています –

答えて

-1

から生のHTMLを返します要素に不要な終了タグがあります.htmlをplnkrに貼り付けると、これが強調表示されます。

私は、原因となっているJSファイルが含まれていない可能性があるため、削除の試行錯誤のプロセスも実行します。

+0

Plnkrは入力終了タグを強調表示しますが、無視されています。また、JSファイルのインクルードをコメントアウトすると、エラーは発生しません。 – qbolt

+0

私はplnkrが期待通りに終了タグを無視することを理解します。他の適切な答えがないと仮定すれば、試行錯誤のアプローチは価値があるだろう。 –

+0

「試行錯誤」の意味がわかりません。もちろん私は多くの試行を試み、多くのエラーを受けました。誰かがここに投稿している場所で問題に遭遇した場合、誰かに「試行錯誤」方法を使用するように指示することは、あまり貢献しません。私は試行錯誤の試行をすべて尽くして以来、誰かが私が間違っていることを見ることができるように、ここに投稿しました。 – qbolt

関連する問題