0

ロードされたスクリプト、スタイルシート、...さようなら要素に設定されたIDにアクセスするコンテンツをどのように取得するのか疑問に思いました。

例:

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>Demo</title>
    <script src="../jquery-1.8.3.min.js"></script>
    <script id="test" src="test.txt" type="text/isis-template"></script>
    <!-- File contains "Hello world" -->
    <script>
        $(function () {
            $('#test').GET_CONTENT_OF_LOADED_FILE
        });
    </script>
</head>
<body>
</body>
</html>

背景:HTMLテンプレート(たとえば、口ひげ、ノックアウト)をロードしたいのですが、ページに書き込みたくないので、別のファイルに入れたいと思います。スクリプトまたはリンクタグを使用して任意のファイルをロードできることがわかったので、このようにロードできるかどうかをテストしていました。これが悪い考えである理由や、より適切に実行できる方法についてのコメントをいただければ幸いです。

4

3 に答える 3

1

load()を使用してみてください

$(function () {
      $('#test').load('yourfolder/test.html', function(resp){
           alert(resp); 
      });
});

すでにいくつかのhtml要素のコンテンツをロードしている場合

contents = $('#test').html();
于 2012-12-06T15:00:43.280 に答える
0

デバッグツールを使用してネットワークアクティビティを確認すると、外部ファイルが読み込まれないことがわかります(これは、text/javascriptではなく、ブラウザはその処理方法を認識していないため
私の側では間違ったテストであり、ローカルでテストしていましたファイル

したがって、属性idに外部リソースを含むタグのみがあります。src単なるメタデータとして扱います。

リソースを手動でロードする必要があります

このようなもの

// load external template resources
$('script[type="text/isis-template"]').each(function(){
    $(this).load(this.src);
});

実際に使用するには、テンプレートを使用する前に、テンプレートがロードされていることを確認する必要があります。

于 2012-12-06T15:11:35.440 に答える
0

では、ドキュメントの準備ができたら、 text / isis-templateファイルのコンテンツが必要ですか?このファイルはCORSに該当しないので、幸運ですが、私のもの(私が探していて、今日ここに来た答え)は該当します。

さて、ajaxを実行してください!

<!doctype html>
<html>
 <head>
   <meta charset="utf-8">
   <title>Demo</title>
   <script src="../jquery-1.8.3.min.js"></script>

   <!-- File contains "Hello world" -->
   <script>
     $(function () {
        $.ajax({ url: "test.html"})
         .done(function(cont) {
             var GET_CONTENT_OF_LOADED_FILE=cont;
         });
     });
   </script>
  </head>
  <body></body>
 </html>
于 2017-06-20T04:39:37.667 に答える