1

たくさんのページを含むサイトを維持するための最善の方法を考え出そうとしていますが、ヘッダーやフッターなどの「一般的な」HTML 要素用に個別の HTML ファイルを作成することにしました。

現在、私のindex.htmlページはこのように設定されており、jQuery 関数はtext.htmlフッター div にコンテンツを挿入することになっています。

<html>
<head>
<title>Test Site</title>
<script src="jquery-1.8.3.min.js" type="text/javascript"></script>
<script type="text/javascript">
    $(function () {
      $("#footer").load("text.html");
    });
</script>
</head>
<body>
    <div id="footer"></div>
</body>
</html>

text.htmlの内容は次のとおりです。

<div style="red">
    Hello, world!
</div>

これは機能していないようで、次のエラーが表示されます

XMLHttpRequest は file:///Users/Jon/Desktop/text.html を読み込めません。Origin null は Access-Control-Allow-Origin では許可されていません

質問:これは jQuery 経由で可能ですか、それとも PHP などを使用する必要がありますか? Wordpress が同様のことを行うことは知っていますが、PHP を使用していることは確かです。この方法は、機能させることができれば非常に持続可能です。

4

2 に答える 2

0

ほとんどのブラウザーでは、AJAX 要求を介して file:// URL を読み込むことはできOrigin null is not allowed by Access-Control-Allow-Origin. ません。(詳細については、Google Chrome --allow-file-access-from-files disabled for Chrome Beta 8を参照してください)

最も簡単な方法は、ローカル Web サーバーを実行することです。そうすれば、そのエラーは発生しません。

また、あなたがしていることに関しては、jQuery よりもはるかに優れたライブラリがあります。私はhttps://github.com/linkedin/dustjs/wiki/Reusable-UI-Dust-modulesを使用しています- これはHow to define mustache partials in HTML? に似ています - どちらも他のファイルのパーシャル/インクルードを持っています。http://pagerjs.com/もご覧ください。

チェックアウトする価値のあるもう 1 つのプロジェクトは、http: //docpad.org/ です。これにより、Web サーバーもインストールされます。サイトでの作業が終了したら、すべてのパーツから静的 HTML を生成できます。

于 2013-05-15T03:36:00.260 に答える
0

サーバー側の言語は必要ありません

コメントに記載されているエラーメッセージへのリプレイ

XMLHttpRequest は file:///Users/Jon/Desktop/text.html を読み込めません。Origin null は Access-Control-Allow-Origin では許可されていません

ネイティブ Web サーバーのセットアップが必要で、ローカルホストまたは 127.0.0.1 を呼び出して実行します。


よく読んだ

Jquery: Web サーバーなしで AJAX をローカルで実行する

于 2013-05-15T03:36:10.207 に答える