これは愚かな監視ですが、jQueryの 'getJSON'関数をどのように動作させるかを理解できません。テスト目的のために、私は次のように設定ディレクトリを有する:jqueryを使ってjsonデータを読むのに問題があります
test.html
js/
jquery-1.6.2.min.js
test.js
ajax/
test.json
およびtest.html
の<head>
でIはgetJSON
関数の最初の試験として線
<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="js/test.js"></script>
を持って、次のようにtest.js
読み取り:
$(document).ready(function() {
$.getJSON('ajax/test.json', function(data) {
alert('Success!');
});
}
ただし、 'test.html'が読み込まれても何も起こりません。私は 'ajax/test.json'のパス指定が問題だと感じていますが、なぜそれがわかりません。
EDIT:中括弧には悪いですが、実際にはコード内に問題はありません。誤ってコピーして貼り付けただけです。私はChrome Developer Toolsを開きましたが、XMLHttpRequestエラーが表示されます。「Origin-nullはAccess-Control-Allow-Originによって許可されていません。
EDIT 2:それは厄介なものです。それはChrome issueのように見えます。 Safariで正常に動作します。回避策として、基本ディレクトリにpython -m SimpleHTTPServer
を起動し、localhost:8000/test.htmlのページにアクセスしてください。その場合はChromeが正常に動作します。
FirebugまたはChromeデベロッパーツールなど、ご使用のブラウザに対応するものを開きます。 [ネット]タブを見て、404を取得しているかどうかを確認します。 JSエラーがあるかどうかを調べるには、コンソールを見てください。 – Quentin
ありがとう..私はちょうどやったし、説明のXMLHttpRequestエラーがあるように見えます: "Originのnullは、Access-Control-Allow-Originによって許可されていません"。これは何を意味するのでしょうか? – macaroon5